Bonjour à tous,
J'ai fait une boucle While mais je n'arrive pas à sortir de la boucle quant il m'a supprimé toute les bonnes lignes quelqu'un peut-il m'aidait ?
Voilà mon code :
Code:
i = Sheets(sh).Range("A" & Rows.Count).End(xlUp).Row
For A = 6 To i
While Sheets(ExiDCNS).Cells(A, 22).Value <> "En" And Sheets(ExiDCNS).Cells(A, 22).Value <> "Eng"
Sheets(ExiDCNS).Rows(A).Delete
If A > 6 Then GoTo Fin
Wend
Next A
Fin:
Bonsoir Lemarcheurfou le forum
c'est vrai pourquoi faire simple quand on peut faire compliqué !!!
En supposant que sh soit égal à Sheets(ExiDCNS), ce qui n'est pas évident là !!!!!!
mais bon la bonne logique serait Sheets(sh) partout, mais va savoir!!
car chercher la dernière ligne de Sh pour supprimer Sheets(ExiDCNS) ???
si c'est une boucle dans une autre boucle ou sh serait les sheets, il faut changer comme je t'ai dit
a+
papou
Code:
i = Sheets(sh).Range("A" & Rows.Count).End(xlUp).Row
For A = i to 6 step-1
if Sheets(ExiDCNS).Cells(A, 22).Value <> "En" And Sheets(ExiDCNS).Cells(A, 22).Value <> "Eng" then
Sheets(ExiDCNS).Rows(A).Delete
end if
Next A
Re Lemarcheur fou le forum
et une autre chose n'oublies jamais que pour supprimer tu pars du bas vers le haut et pas l'inverse
autrement si tu retires la ligne 2 après suppression c'est la ligne 3 qui devient la 2 et ta boucle elle va passer à la ligne 3 !!!!
Pas bon tu auras raté une ligne dans l'autre sens pas ce souci puisque la 5 devient la 4 mais tu remontes donc elle ne t’échappera pas
a+
papou