Débutant en VBA, je souhaiterais supprimer les lignes vides se trouvant entre la ligne 24 et 209 de ma feuille jusqu'à la dernière cellule contenant un élément (en remontant de 209 à 24), la condition étant que la ligne de la colonne B et C doit être vide.
Merci pour votre aide, car je n'arrive pas a adapter les solutions a peu près similaire qui ont déjà été posté.
Sub test()
Dim i As Integer
Application.ScreenUpdating = False
For i = 209 To 24 Step -1
If IsEmpty(Cells(i, 2).Value) And IsEmpty(Cells(i, 3).Value) Then Rows(i).Delete
Next i
Application.ScreenUpdating = True
End Sub
Ton code est presque parfait. Il traite bien uniquement la plage 24 à 209 avec la condition sur deux cellules vides, mais il supprime toutes les lignes de la plage.
Est il possible de supprimer les lignes en remontant de 209 à 24 jusqu'à la première cellule contenant un élément.
Sub test()
Dim i As Integer
Application.ScreenUpdating = False
For i = 209 To 24 Step -1
If IsEmpty(Cells(i, 2).Value) And IsEmpty(Cells(i, 3).Value) Then
Rows(i).Delete
Else
Exit For
End If
Next i
Application.ScreenUpdating = True
End Sub
La boucle s'arrete dès qu'une cellule en colonne b ou c est non vide, et ce en remontant à partir de la ligne 209...