Problème code suppression de ligne avec condition VBA

Bonjour,

Je ne comprends pas où est mon problème dans mon code, je cherche à supprimer une ligne si dans ma colonne H quand ce n'est pas marqué VRAI, j'ai donc mis ça:

For n = Range("H65356").End(xlUp).Row To 2 Step -1
If Range("H" & n) <> "VRAI" Then Range("H" & n).EntireRow.Delete
Next n


Le problème c'est qu'il m'efface TOUTES mes lignes, et je ne comprends pas pourquoi, pourtant j'ai déjà utilisé cette fonction qui marche très bien.

Quelqu'un pourrais m'éclairer?

Merci d'avance

2 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonjour,

    cote cellules excel: VRAI ou FAUX, mais cote VBA Range("H" & n) est egale a: Vrai ou Faux
    1. Pas compris désolé (je débute en VBA)
    2. @Fitz_ChevRe,

      J'ai fait erreur, il faut faire comme l'a ecrit ccm81 16 sept. 2015 à 16:54 : True pour "Vrai" ou False pour "Faux"
  2. Bonjour

    Je suppose que VRAI provient d'un test donc c'est un booleen (VRAI ou FAUX)
    Essaies comme ceci
    Public Sub OK()
    Dim n As Long, lifin As Long
    lifin = Range("H65356").End(xlUp).Row
    For n = lifin To 2 Step -1
      If Range("H" & n) <> True Then Range("H" & n).EntireRow.Delete
    Next n
    End Sub

    Cdlmnt