Suppression ligne avec condition

bonjour,

je cherche une macro afin de supprimer toutes les lignes où apparait le mot "total" sur une selection qui va de A1 à F300

le mot total est aléatoire pour ses emplacements et je souhaiterais que chaque ligne où apparait ce mot soit supprimé

un grand merci d'avance à tous ceux qui voudront bien jeter un oeil à ma demande car je je cherche depuis longtemps

merci

AUBA

Bonjour,

Place ce code dans un module :

Sub Supprime()
    For Each cellule In Range("A1:F300")
        If cellule.Value = "total" Then Rows(cellule.Row).Delete
    Next
End Sub

A+

Edit : bien vu Cousinhub, j'ai effectivement oublié de faire ça en remontant, du coup si deux lignes se suivent avec total la 2ème n'est pas supprimée. Si j'avais eu le fichier tout de suite sous les yeux je l'aurais vu mais là de tête "je m'a trompé".

Bonjour,

Autre solution :

Sub suppr_total()
Dim I As Integer
For I = 300 To 1 Step -1
    If Not Cells(I, 1).Resize(1, 6).Find("total") Is Nothing Then Rows(I).Delete
Next I
End Sub

PS, lorsque l'on supprime des lignes entières, il vaut mieux commencer par la dernière ligne, et remonter..(ça évite d'en oublier en route....)

Bonne journée

bonjour et merci de vos réponses,

le problème c'est que cela ne marche pas

afin d'être plus explicite je vais joindre unexemple de mon tableau

pour info la feuille se nomme : PDT

dans mon tableau je souhaiterais que la ligne entière soit supprimée si le mot "Total" apparait dans une cellule de cette ligne

merci d'avance

AUBA

557exemple-sup-total.xls (14.50 Ko)

Bonjour

le problème c'est que cela ne marche pas

Avant d'être si affirmatif, il vaut mieux tester..

Cordialement

1'137exemple-sup-total.zip (6.20 Ko)

Oupss, j'allais répondre, mais Amadéus m'a coupé l'herbe sous le pied....

Et comme il le dit si bien, teste!!!!

A la rigueur, si tu trouves que ça dure trop longtemps, avant que tu ne vois un quelconque changement, modifie ainsi, afin de ne prendre que la plage utile de ta base de données :

Sub suppr_total()
Dim I As Integer
For I = [A65000].End(xlUp).Row To 1 Step -1
    If Not Cells(I, 1).Resize(1, 6).Find("total") Is Nothing Then Rows(I).Delete
Next I
End Sub

Et à l'avenir, plutôt que d'affirmer "ça ne marche pas", demande pourquoi cela ne fonctionne pas sur ton fichier...

Bonne journée

rebonjour,

je suis désolé, la macro est parfaite et fonctionne très bien

j'avais fait une petite erreur de recopiage

encore merci à tous

AUBA

Rechercher des sujets similaires à "suppression ligne condition"