Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
Boostez vos compétences Excel avec notre communauté !
Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force.
Apprenez, échangez, progressez – et tout ça gratuitement !
👉 Inscrivez-vous maintenant !
Je souhaiterais trouver un moyen (macro ?) de supprimer toutes les lignes d'un tableau dont la cellule G (par exemple) contient un certain mot (en l'occurence le mot "Somme").
Re : supprimer lignes si une cellule contient un mot
Bonjour Skoobi
Une variante (en utilisant le filtre automatique)
Tu peux le faire manuellement
ou avec cette macro (ici filtre sur la colonne A)
Code:
Sub Macro1()
Dim PLG_FIL As Range
If Not ActiveSheet.AutoFilterMode Then
Range("A1").AutoFilter Field:=1, Criteria1:="somme"
End If
Set PLG_FIL = ActiveSheet.AutoFilter.Range
PLG_FIL.Offset(1, 0).Resize(PLG_FIL.Rows.Count - 1, 1).EntireRow.Delete
ActiveSheet.AutoFilterMode = False
End Sub
Re : supprimer lignes si une cellule contient un mot
Bonjour Staple,
chez moi ce code efface tout ! Je recherche une macro de suppression de ligne en fonction d'un terme particulier à saisir dans une cellule ou une pop-up : si une ligne contient le mot entré, on la supprime.
Re : supprimer lignes si une cellule contient un mot
Bonsoir,
J'ai le même type de problème que Skoobi.
Je cherche à supprimer les lignes contenant la date "12051997" (sous format texte, car si je change le format ça me met: ######).
J'ai adapté le code proposé mais une fois la macro appliquée les dates ne sont plus dans l'ordre et surtout les données en face des dates ne correspondent plus.
J'ai mis:
Code:
Sub test()
Dim c As Range
For Each c In ActiveSheet.UsedRange
If c Like "12051997" Then c.Rows.Delete
Next
End Sub
Re : supprimer lignes si une cellule contient un mot
Bonjour DoubleZero,
Merci pour ta solution, je n'avais pas pensé à utiliser le filtre.
J'ai fait ça et après j'ai simplement sélectionné et supprimé les lignes filtrées (plus simple pour moi que d'utiliser une macro).
Re : supprimer lignes si une cellule contient un mot
Bonjour à tous,
grâce à vos réponse j'ai pu adapter les lignes de code afin de l'insérer dans ma macro :
Sub Find_Erase_PSS_Manual()
Dim J As Long
For J = 1110 To 31 Step -1
If Range("C" & J) = "xxx" Then Row(J).ClearContents
Next J
End Sub
Mais mon problème est le suivant : ClearContents efface le contenu de toute la ligne, hors j'ai dans les colonnes des formules qui se trouvent alors être supprimées mais j'en ai besoin.
Je pense que la solution serait de remplacer Row par une plage de donnée (colonne A à S).
Est ce que quelqu'un aurait la solution ?
Je débute en VBA mais vous m'avez déjà bien aidé grâce aux réponses apportées.
Je suis dans le même cas, je souhaite supprimé les lignes complètes si ma case J4 - > Jx = 0
J'ai donc adapté la formule de code :
Sub Module_8()
Dim PLG_FIL As Range
If Not ActiveSheet.AutoFilterMode Then
Range("J4").AutoFilter Field:=1, Criteria1:="0"
End If
Set PLG_FIL = ActiveSheet.AutoFilter.Range
PLG_FIL.Offset(1, 0).Resize(PLG_FIL.Rows.Count - 1, 1).EntireRow.Delete
ActiveSheet.AutoFilterMode = False
End Sub
Cependant, ma première ligne concernée, la ligne 4 ne se supprime pas. Même avec "0" en valeur en J4.
Je ne comprends pas exactement d'ou vient l'erreur, si une âme attentionnée saurait m'expliquer le problème.
- Navigue sans publicité - Accède à Cléa, notre assistante IA experte Excel... et pas que... - Profite de fonctionnalités exclusives Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel. Je deviens Supporter XLD