Macro pour supprimer lignes ne contenant pas un terme donné

Résolu
ClemG -  
 ClemG -
Bonjour à tous !

Etant débutante en macro, je rencontre un petit problème : j'ai une liste de produits de différents goûts sous Excel (exemple: cranberry, cranberry & framboise; orange; pomme).
Si les cellules de la colonne D (dans laquelle se trouvent ces produits) ne contiennent pas les termes "cranberry" ou "pomegranate", alors je veux supprimer les lignes correspondantes.

En d'autres termes, je ne souhaite conserver dans ma page excel que les produits contenant du cranberry ou du pomegranate.

J'ai pour le moment essayé avec cette macro :

Sub super_fruits()
'
For Each cell In Range("D4:D450")
If Not cell.Value Like "Cranberry" Or cell.Value Like "Pomegranate" Then Rows(cell.Row).Delete
Next
Dim I As Integer
For I = 450 To 4 Step -1
If Not Cells(I, 4) Like "Cranberry" Then
Rows(I).Delete
End If
Next

End Sub


Et là je rencontre 2 problèmes : d'une part, ma macro ne me garde que les lignes contenant exclusivement "Cranberry" (en ne tenant pas compte de "Pomegranate"). D'autre part, je ne veux pas garder que les lignes contenant "cranberry" mais aussi celles comme "cranberry & framboise" par exemple, dans lesquelles cranberry est inclus.

J'espère que vous pourrez m'aider !!!! merci d'avance pour tous vos conseils
Clem
A voir également:

2 réponses

pilas31 Messages postés 1825 Date d'inscription   Statut Contributeur Dernière intervention   646
 
Bonjour,

A essayer :

Sub super_fruits() 
Dim I As Integer
For I = 450 To 4 Step -1
    If Not (Cells(I, 4).Value Like "*Cranberry*" Or Cells(I, 4).Value Like "*Pomegranate*") Then
        Rows(I).Delete
    End If
Next
End Sub



A+
Cordialement,
1
ClemG
 
ça fonctionne....un grand merci !!!!!!!!!

A bientôt!
0