Problème VBA qui ne supprime pas toutes les lignes voulues

Bonjour à tous,

J'ai crée un code VBA qui permet la suppression des lignes en fonction d'une valeur dans la colonne J. Les valeurs possibles sont : M, L ou S. Je veux supprimer toutes les lignes dont les valeurs ne sont pas M. Lorsque j'active ma VBA elle supprime quelques lignes seulement et il me reste encore des L ou des S. Je suis obligé de cliquer plusieurs fois sur le bouton de ma VBA pour pouvoir supprimer les lignes. Pouvez-vous m'aider?

Voici mon code :

Sub DelDonnées3()

For i = 11 To 1000

If Not Cells(i, 10).Value = "M" Then Rows(i).Delete

Next

End Sub

Pouvez-vous m'aider? Je vous ai mis mon fichier EXCEL en pièce jointe. Merci d'avance pour vos réponses.

C'est en faisant des erreurs que l'on apprend.

10test-vba.xlsm (62.87 Ko)

Bonjour,

For i = 1000 to 11 step -1

Il faut faire à l'envers.

Sinon tu supprimes une ligne, les autres remontent et tu passes à la suivante. Il y en donc une (celle qui était juste en dessous) qui n'a pas été testée.

eric

Merci Eric!

C'est exactement ce qu'il me fallait, je suis débutant et j'en apprends de plus en plus grâce à vous. Merci beaucoup

Rechercher des sujets similaires à "probleme vba qui supprime pas toutes lignes voulues"