Macro suppresion de lignes sous condition

arcasavoir -  
Mike-31 Messages postés 19572 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Bonjour,
sous excel 2003, je voudrais créer une macro qui efface des lignes lorsque une cellule de ces lignes contient une valeur définie.

par exemple dans mon tableau, j'ai dans une colonnes des cellules contenant le texte Homme ou Dame.
je voudrais effacer toutesles ligne concernat les hommes.

Pouvez vous m'aider je suis perdu en visaul basic
A voir également:

2 réponses

f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 715
 
Bonjour,

Adaptez le nom de feuille et la colonne, code a mettre dans un module

Sub test()
    With Worksheets("feuil1")
        'ligne derniere cellule non vide feuille1,colonne A
        derlig = .Range("A" & Rows.Count).End(xlUp).Row
        For x = derlig To 1 Step -1
            'test en majuscule pour eviter difference d'ecriture
            If UCase(.Range("A" & x)) = "HOMME" Then
                'supprime les lignes
                'Rows(x).Delete
                'efface le contenu des lignes
                Rows(x).Clear
            End If
        Next x
    End With
End Sub


Bonne suite
0
Mike-31 Messages postés 19572 Date d'inscription   Statut Contributeur Dernière intervention   5 139
 
Salut,

tu ne donnes pas trop d'explications sur la structure de ton projet, en supposant que la colonne à traiter est la colonne B et commence en B2 et les lignes à supprimer contiennent en colonne B le mot homme

Option Explicit

Sub test()
Dim I As Integer
Application.ScreenUpdating = False
For I = Range("B" & Rows.Count).End(xlUp).Row To 2 Step -1
If Range("B" & I).Value Like "homme" Then Rows(I).Delete
Next I
Application.ScreenUpdating = True
End Sub

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0