Macro qui tourne indéfiniment en boucle

Bonjour à tous,

Quelqu'un pourrait-il m'expliquer pourquoi la macro suivante ne fonctionne pas ? (elle tourne indéfiniment)

Et également comment je peux rajouter un autre nom après Toto ?

-> pour dire : si ce n'est pas toto ou tonton alors effacer la ligne entière.

Merci d'avance et excusez ma nullitude

Sub test()

Sheets("tata").Select

For i = 1 To 10000

If Cells(i, "H") <> "toto" Then

Cells(i, 1).EntireRow.Delete

i = i - 1

End If

Next

End Sub

Bonjour,

Essaies l'inverse mais c'est quoi le "H", Cells doit avoir des arguments numériques

Sub test()
    Sheets("tata").Select
    For i = 10000 To 1 Step -1
        If Cells(i, 1) = "toto" Or Cells(i, 1) = "tonton" Then
        Else
            Cells(i, 1).EntireRow.Delete
        End If
    Next
End Sub

Bonjour Renauder,

En fait le "H" c'est la colonne H

Donc il faut que je mettes :

If Cells(i,8) = "toto" Or Cells(i,8) = "tonton" Then

c'est bien ça ?

Bonjour

Bonsoir NulEnVBA (pas tant que ça )

Juste pour info

L'objet Cells peut prendre le nom littéral de la colonne (je crois seulement de A à Z)

Cells(10, "H") est équivalent à Cells(10, 8 ) : Des fois c'est plus facile de suivre un code

Bonjour,

C'est exact car la fonction c'est Cells(Ligne, Colonne)

On apprend toujours car je n'avais jamais essayé un code de type:

Cells(1, "AZ").Select

Pour répondre à Banzai le code ci-dessus fonctionne, ça ne s'arrête pas à Z.

Par contre dans l'aide il ne parle pas du cas avec une lettre?

Super merci beaucoup Renauder.

Banzai64 merci pour l'info.

PS : je ne fais que bidouiller gràce à tout ce que je trouve sur Internet et surtout à ce genre de forum.

Donc un grand Merci à Excel-Pratique également

Bonsoir

Tous les jours on apprend

Par manque d'envie (flemme) je n'avais pas testé Cells(x,"AZ")

merci à RENAUDER

Rechercher des sujets similaires à "macro qui tourne indefiniment boucle"