Stéphane_1
XLDnaute Nouveau
Bonjour,
Dans mon programme je peut créer jusqu'à 2 lignes à partir d'une, et des valeurs sont modifiées dans les 3 lignes. J'ai demandé au programme de s'assurer que ces valeurs n'étaient pas égale à 0 et de supprimer la ligne si c'était le cas. Sauf qu'après être passé sur les conditions au lieu de recommencer pour i =1 et i = 2 il passe directement à la suite. C'est arrivé après que j'ai ajouté I = I - 1, et retirer cette ligne n'a évidemment rien changé. Quand la boucle s'exécutait "correctement" c'était une boucle infinie, je ne sais pas pourquoi.
Voici mon code :
For I = 0 To I > 2
If ActiveCell.Offset(I, -1).Value = 0 Then
Rows(ActiveCell.Row + I).EntireRow.Delete
I = I - 1
ElseIf ActiveCell.Offset(I, 0).Value = 0 Then
Rows(ActiveCell.Row + I).EntireRow.Delete
I = I - 1
End If
Next I
PS :
Merci d'avance pour vos réponses
Dans mon programme je peut créer jusqu'à 2 lignes à partir d'une, et des valeurs sont modifiées dans les 3 lignes. J'ai demandé au programme de s'assurer que ces valeurs n'étaient pas égale à 0 et de supprimer la ligne si c'était le cas. Sauf qu'après être passé sur les conditions au lieu de recommencer pour i =1 et i = 2 il passe directement à la suite. C'est arrivé après que j'ai ajouté I = I - 1, et retirer cette ligne n'a évidemment rien changé. Quand la boucle s'exécutait "correctement" c'était une boucle infinie, je ne sais pas pourquoi.
Voici mon code :
For I = 0 To I > 2
If ActiveCell.Offset(I, -1).Value = 0 Then
Rows(ActiveCell.Row + I).EntireRow.Delete
I = I - 1
ElseIf ActiveCell.Offset(I, 0).Value = 0 Then
Rows(ActiveCell.Row + I).EntireRow.Delete
I = I - 1
End If
Next I
PS :
Merci d'avance pour vos réponses
Dernière édition: