Dans une sub, je d=E9clare des tableaux :
Lachers2003=3DARRAY ("...", "...", "...")
Lachers2004=3DARRAY ("...", "...", "...")
Dans un formulaire, j'ai une liste o=F9 je peux choisir une=20
ann=E9e (2003, 2004)
For l=3D0 to Ubound(Lachers2004)
....
Que faut-il mettre dans la parenth=E8se du Ubound pour que=20
lorsque je choisis 2003 j'ai For l=3D0 to Ubound(Lachers2003)
et si je choisis 2004 j'ai For l=3D0 to Ubound(Lachers2004),
sans =E9crire les boucles en dur =E0 chaque fois?
j'ai essay=E9 vainement plusieurs id=E9=E9s (avec des ", des &).=20
Mais je n'obtiens rien de bien.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Eric
Bonjour Fabienne,
En utilisant un tableau temporaire nommé Temp et pas typé donc variant pour lui passer tes tableaux Array suivant le choix dans la liste modifiable. Les 2 Array peuvent être de taille différente. Par contre, tu devras en dur faire l'affectation du Temp mais ca t'évite de faire 2 boucles.
Private Sub Modifiable0_AfterUpdate() Dim Lachers2003, Lachers2004, Temp, i as Integer Lachers2003 = Array("toto", "tata", "titi") Lachers2004 = Array("riri", "lulu", "fonfon", "jojo") If Modifiable0.ListIndex = 0 Then Temp = Lachers2003 Else Temp = Lachers2004 End If For i = 0 To UBound(Temp) Debug.Print Temp(i) Next i End Sub
Cela conviendrait-il et répond-il à la question ?
-- A+ Eric Lien à suivre : http://users.skynet.be/mpfa/ fabienne HUÏEZ écrivait news:0f5501c4fefc$6f225070$:
bonjour à tous,
Dans une sub, je déclare des tableaux : Lachers2003=ARRAY ("...", "...", "...") Lachers2004=ARRAY ("...", "...", "...")
Dans un formulaire, j'ai une liste où je peux choisir une année (2003, 2004)
For l=0 to Ubound(Lachers2004) ....
Que faut-il mettre dans la parenthèse du Ubound pour que lorsque je choisis 2003 j'ai For l=0 to Ubound(Lachers2003) et si je choisis 2004 j'ai For l=0 to Ubound(Lachers2004), sans écrire les boucles en dur à chaque fois?
j'ai essayé vainement plusieurs idéés (avec des ", des &). Mais je n'obtiens rien de bien.
merci pour vos réponses fabienne
Bonjour Fabienne,
En utilisant un tableau temporaire nommé Temp et pas typé donc variant
pour lui passer tes tableaux Array suivant le choix dans la liste
modifiable. Les 2 Array peuvent être de taille différente. Par contre, tu
devras en dur faire l'affectation du Temp mais ca t'évite de faire 2
boucles.
Private Sub Modifiable0_AfterUpdate()
Dim Lachers2003, Lachers2004, Temp, i as Integer
Lachers2003 = Array("toto", "tata", "titi")
Lachers2004 = Array("riri", "lulu", "fonfon", "jojo")
If Modifiable0.ListIndex = 0 Then
Temp = Lachers2003
Else
Temp = Lachers2004
End If
For i = 0 To UBound(Temp)
Debug.Print Temp(i)
Next i
End Sub
Cela conviendrait-il et répond-il à la question ?
--
A+
Eric
Lien à suivre : http://users.skynet.be/mpfa/
fabienne HUÏEZ <fabienne.huiez@francetelecom.com> écrivait
news:0f5501c4fefc$6f225070$a601280a@phx.gbl:
bonjour à tous,
Dans une sub, je déclare des tableaux :
Lachers2003=ARRAY ("...", "...", "...")
Lachers2004=ARRAY ("...", "...", "...")
Dans un formulaire, j'ai une liste où je peux choisir une
année (2003, 2004)
For l=0 to Ubound(Lachers2004)
....
Que faut-il mettre dans la parenthèse du Ubound pour que
lorsque je choisis 2003 j'ai For l=0 to Ubound(Lachers2003)
et si je choisis 2004 j'ai For l=0 to Ubound(Lachers2004),
sans écrire les boucles en dur à chaque fois?
j'ai essayé vainement plusieurs idéés (avec des ", des &).
Mais je n'obtiens rien de bien.
En utilisant un tableau temporaire nommé Temp et pas typé donc variant pour lui passer tes tableaux Array suivant le choix dans la liste modifiable. Les 2 Array peuvent être de taille différente. Par contre, tu devras en dur faire l'affectation du Temp mais ca t'évite de faire 2 boucles.
Private Sub Modifiable0_AfterUpdate() Dim Lachers2003, Lachers2004, Temp, i as Integer Lachers2003 = Array("toto", "tata", "titi") Lachers2004 = Array("riri", "lulu", "fonfon", "jojo") If Modifiable0.ListIndex = 0 Then Temp = Lachers2003 Else Temp = Lachers2004 End If For i = 0 To UBound(Temp) Debug.Print Temp(i) Next i End Sub
Cela conviendrait-il et répond-il à la question ?
-- A+ Eric Lien à suivre : http://users.skynet.be/mpfa/ fabienne HUÏEZ écrivait news:0f5501c4fefc$6f225070$:
bonjour à tous,
Dans une sub, je déclare des tableaux : Lachers2003=ARRAY ("...", "...", "...") Lachers2004=ARRAY ("...", "...", "...")
Dans un formulaire, j'ai une liste où je peux choisir une année (2003, 2004)
For l=0 to Ubound(Lachers2004) ....
Que faut-il mettre dans la parenthèse du Ubound pour que lorsque je choisis 2003 j'ai For l=0 to Ubound(Lachers2003) et si je choisis 2004 j'ai For l=0 to Ubound(Lachers2004), sans écrire les boucles en dur à chaque fois?
j'ai essayé vainement plusieurs idéés (avec des ", des &). Mais je n'obtiens rien de bien.