Boucle while jusqu'à ce que la valeur soit le vide
Résolu
Robin
-
Robin -
Robin -
Bonjour,
J'ai un soucis avec la macros que je suis en train de créer en fait je chercher à faire une boucle while du type :
Le problème c'est que ma variable val1 atteint la limite de mon tableau alors que normalement c'est impossible je devrais rencontrer une ligne vide bien avant.
Pouvez vous m'aider ?
Pour info voici les dimensions de mes variables:
Merci d'avance
J'ai un soucis avec la macros que je suis en train de créer en fait je chercher à faire une boucle while du type :
While OF1(val1, 0).Value <> ""
val1 = L + 1
While OF1(L, 0) = OF1(val1, 0)
If OF1(val1, 7) = OF1(L, 7) Then
If OF1(val1, 4) <> OF1(L, 4) & OF1(val1, 5) <> OF1(L, 5) Then
OF2(Nolig, 5) = OF1(val1, 5) + OF1(L, 5)
ElseIf OF1(val1, 4) = OF1(L, 4) & OF1(val1, 5) = OF1(L, 5) Then
OF2(Nolig, 5) = OF1(L, 5)
End If
ElseIf OF1(val1, 7) <> OF1(L, 7) Then
OF1(L, 2) = OF1(L, 2) + OF1(val1, 2)
OF1(L, 7) = OF1(val1, 7)
ElseIf OF1(val1, 1) = "L20" Then
OF2(Nolig, 4) = OF1(val1, 4)
ElseIf OF1(val1, 1) = "L30" Then
OF2(Nolig, 3) = OF1(L, 3)
ElseIf OF1(L, 1) = "L20" Then
OF2(Nolig, 4) = OF1(val1, 4)
ElseIf OF1(L, 1) = "L30" Then
OF2(Nolig, 3) = OF1(L, 3)
End If
val1 = val1 + 1
Wend
OF2(Nolig, 2) = OF1(L, 2)
L = val1
Nolig = Nolig + 1
Wend
Le problème c'est que ma variable val1 atteint la limite de mon tableau alors que normalement c'est impossible je devrais rencontrer une ligne vide bien avant.
Pouvez vous m'aider ?
Pour info voici les dimensions de mes variables:
Dim val1 As Variant, Nolig As Long Dim L As Integer Dim OF1(100, 10) As Variant, OF2(10, 8) As Variant
Merci d'avance
A voir également:
- Boucle while jusqu'à ce que la valeur soit le vide
- Supprimer page word vide - Guide
- Caractere vide - Guide
- Coeur vide ✓ - Forum Facebook
- Raccourci coeur blanc - Forum Facebook
- Formate pour taxer client frigo vide - Forum Vos droits sur internet
2 réponses
Bonjour
Pour boucler sur une variable-tableau tu peux utiliser les fonctions Lbound
et Ubound
Lbound =1° "ligne" de OF1
Ubound Fin de OF1
Pour boucler sur une variable-tableau tu peux utiliser les fonctions Lbound
et Ubound
Lbound =1° "ligne" de OF1
Ubound Fin de OF1
For xxxx=Llbound(OF1) to Ubound(OF1)
ou
For xxxx=0 to Ubound(OF1)
.....
If OF1(val1, 0)="" then exit for
....
next
Merci beaucoup Michel, j'ai grandement amélioré la vitesse de calcul de ma macros désormais.
A bientôt