Supprimer des lignes en fonctions des valeurs de cellules sur une colonne

Bonsoir à tous,

Je sollicite votre aide, n'ayant pas un grand niveau en vba :)

Je souhaite supprimer des lignes de mon tableau de données en fonction de la valeur d'une colonne.

Alors pour une valeur donné (<>"Expédié") , j'ai écrit cette macro qui fonctionne (module 1) :

Sub total()

Dim Lig1 As Integer

Sheets("CONVERT").Select
Lig1 = 2
While Sheets("CONVERT").Cells(Lig1, 1).Value <> ""
If Sheets("CONVERT").Cells(Lig1, 4).Value <> "Expédié" Then
Sheets("CONVERT").Cells(Lig1, 4).Select
Selection.EntireRow.Delete Shift:=xlDown
Else
Lig1 = Lig1 + 1
End If
Wend

End Sub

Mais si j'ajoute une autre condition (module 2), je ne trouve pas la syntaxe correcte

If Sheets("CONVERT").Cells(Lig1, 4).Value <> "Expédié" Or "Rebutée" Then

Merci de votre support

Bonjour,

Malheureusement, il faut répéter la cellule dans la condition :

If Sheets("CONVERT").Cells(Lig1, 4).Value <> "Expédié" Or Sheets("CONVERT").Cells(Lig1, 4).Value <> "Rebutée" Then

Voici une proposition plus rapide dans le cas d'un grand nombre de lignes :

Sub total()
dim rsupp as range, dl as long, i as long
with Sheets("CONVERT")
    dl = .Cells(.rows.count, 1).end(xlup).row 'dernière ligne vide en colonne 1
    for i = 2 to dl
        If .Cells(i, 4).Value = "Expédié" or .cells(i, 4).value = "Rebutée" Then
            if rsupp is nothing then set rsupp = .rows(i)
            set rsupp = union(rsupp, .rows(4))
        end if
    next i
end with
if not rsupp is nothing then rsupp.entirerow.delete
End Sub

Cdlt,

Merci pour vos réponses

La 1ère solution que vous me donnez marche bien dans mon cas . Sauf qu'il fallait mettre un "And" au lieu d'un "Or".

La 2ème ne marche pas complètement. Sur mon exemple elle a laissé une ligne non souhaitée. Je vais la regarder de plus près quand j'aurais plus de dispo.

C'est peut-être pour la même raison (?)

Encore merci et bonne journée

Bonjour,

Oui, c'est sûrement la condition qu'il faut ajuster ! Je ne savais pas vraiment ce que vous vouliez...

Cdlt,

Rechercher des sujets similaires à "supprimer lignes fonctions valeurs colonne"