dans ma fonction VBS, je cherche à faire une boucle for qui parcours les
valeurs de mes inputs.
Voici mon code :
For i=1 to 3
MsgBox forme.['nom'&i].value
Next
Evidement, ça marche pas.. comment faire pour faire fonctionner cette boucle
?
dans ma fonction VBS, je cherche à faire une boucle for qui parcours les valeurs de mes inputs. Voici mon code : For i=1 to 3 MsgBox forme.['nom'&i].value Next
Evidement, ça marche pas.. comment faire pour faire fonctionner cette boucle ?
Merci à tous.
Hello,
tu peux utiliser
getElementsByName
qui retourne une collection d'objets en se basant sur l'attribut name,
applicable à l'objet document:
Public Sub DispFields()
Dim i
For i = 1 To 3
Msgbox document.getElementsByName("nom" & i).item(,0).value
Next
End Sub
Si tu as plusieurs champs avec le même name, tu peux employer
getElementsByTagName qui lui est applicable à un objet form:
Public Sub DispFields()
Dim Fields, Field
Set Fields = formulaire.getElementsByTagName("input")
For Each Field In Fields
If Lcase(Field.Type) = "text" Then
MsgBox Field.Name & " : " & Field.Value
End If
Next
End Sub
--
François Picalausa (MVP VB)
http://faq.vb.free.fr --- http://msdn.microsoft.com
http://apisvb.europe.webmatrixhosting.net
"Machaon" <machaon13@wanadoo.fr> a écrit dans le message de
news:cdnuo1$prt$1@aphrodite.grec.isp.9tel.net
dans ma fonction VBS, je cherche à faire une boucle for qui parcours
les valeurs de mes inputs.
Voici mon code :
For i=1 to 3
MsgBox forme.['nom'&i].value
Next
Evidement, ça marche pas.. comment faire pour faire fonctionner cette
boucle ?
dans ma fonction VBS, je cherche à faire une boucle for qui parcours les valeurs de mes inputs. Voici mon code : For i=1 to 3 MsgBox forme.['nom'&i].value Next
Evidement, ça marche pas.. comment faire pour faire fonctionner cette boucle ?
Merci à tous.
Machaon
Merci bcp François, en fait, j'ai réussi à résoudre mon pb grâce à la fonction Eval() qui me transforme ma chaine concaténée en objet utilisable !
"François Picalausa" a écrit dans le message de news:
Hello,
tu peux utiliser getElementsByName qui retourne une collection d'objets en se basant sur l'attribut name, applicable à l'objet document:
Public Sub DispFields() Dim i For i = 1 To 3 Msgbox document.getElementsByName("nom" & i).item(,0).value Next End Sub
Si tu as plusieurs champs avec le même name, tu peux employer getElementsByTagName qui lui est applicable à un objet form:
Public Sub DispFields() Dim Fields, Field Set Fields = formulaire.getElementsByTagName("input")
For Each Field In Fields If Lcase(Field.Type) = "text" Then MsgBox Field.Name & " : " & Field.Value End If Next End Sub
-- François Picalausa (MVP VB) http://faq.vb.free.fr --- http://msdn.microsoft.com http://apisvb.europe.webmatrixhosting.net
"Machaon" a écrit dans le message de news:cdnuo1$prt$ > Bonjour à tous, > > dans mon code HTML, j'ai : > <input type="text" name="nom1" value="toto"> > <input type="text" name="nom2" value="totu"> > <input type="text" name="nom3" value="toti"> > > dans ma fonction VBS, je cherche à faire une boucle for qui parcours > les valeurs de mes inputs. > Voici mon code : > For i=1 to 3 > MsgBox forme.['nom'&i].value > Next > > > Evidement, ça marche pas.. comment faire pour faire fonctionner cette > boucle ? > > Merci à tous.
Merci bcp François, en fait, j'ai réussi à résoudre mon pb grâce à la
fonction Eval() qui me transforme ma chaine concaténée en objet utilisable !
"François Picalausa" <fpicalausa@chez.com> a écrit dans le message de
news:OP7CIt8bEHA.596@TK2MSFTNGP11.phx.gbl...
Hello,
tu peux utiliser
getElementsByName
qui retourne une collection d'objets en se basant sur l'attribut name,
applicable à l'objet document:
Public Sub DispFields()
Dim i
For i = 1 To 3
Msgbox document.getElementsByName("nom" & i).item(,0).value
Next
End Sub
Si tu as plusieurs champs avec le même name, tu peux employer
getElementsByTagName qui lui est applicable à un objet form:
Public Sub DispFields()
Dim Fields, Field
Set Fields = formulaire.getElementsByTagName("input")
For Each Field In Fields
If Lcase(Field.Type) = "text" Then
MsgBox Field.Name & " : " & Field.Value
End If
Next
End Sub
--
François Picalausa (MVP VB)
http://faq.vb.free.fr --- http://msdn.microsoft.com
http://apisvb.europe.webmatrixhosting.net
"Machaon" <machaon13@wanadoo.fr> a écrit dans le message de
news:cdnuo1$prt$1@aphrodite.grec.isp.9tel.net
> Bonjour à tous,
>
> dans mon code HTML, j'ai :
> <input type="text" name="nom1" value="toto">
> <input type="text" name="nom2" value="totu">
> <input type="text" name="nom3" value="toti">
>
> dans ma fonction VBS, je cherche à faire une boucle for qui parcours
> les valeurs de mes inputs.
> Voici mon code :
> For i=1 to 3
> MsgBox forme.['nom'&i].value
> Next
>
>
> Evidement, ça marche pas.. comment faire pour faire fonctionner cette
> boucle ?
>
> Merci à tous.
Merci bcp François, en fait, j'ai réussi à résoudre mon pb grâce à la fonction Eval() qui me transforme ma chaine concaténée en objet utilisable !
"François Picalausa" a écrit dans le message de news:
Hello,
tu peux utiliser getElementsByName qui retourne une collection d'objets en se basant sur l'attribut name, applicable à l'objet document:
Public Sub DispFields() Dim i For i = 1 To 3 Msgbox document.getElementsByName("nom" & i).item(,0).value Next End Sub
Si tu as plusieurs champs avec le même name, tu peux employer getElementsByTagName qui lui est applicable à un objet form:
Public Sub DispFields() Dim Fields, Field Set Fields = formulaire.getElementsByTagName("input")
For Each Field In Fields If Lcase(Field.Type) = "text" Then MsgBox Field.Name & " : " & Field.Value End If Next End Sub
-- François Picalausa (MVP VB) http://faq.vb.free.fr --- http://msdn.microsoft.com http://apisvb.europe.webmatrixhosting.net
"Machaon" a écrit dans le message de news:cdnuo1$prt$ > Bonjour à tous, > > dans mon code HTML, j'ai : > <input type="text" name="nom1" value="toto"> > <input type="text" name="nom2" value="totu"> > <input type="text" name="nom3" value="toti"> > > dans ma fonction VBS, je cherche à faire une boucle for qui parcours > les valeurs de mes inputs. > Voici mon code : > For i=1 to 3 > MsgBox forme.['nom'&i].value > Next > > > Evidement, ça marche pas.. comment faire pour faire fonctionner cette > boucle ? > > Merci à tous.