Supprimer lignes contenant un "2"

13GIBE59

XLDnaute Accro
Bonjour le forum.:)

Je continue mon appentissage vba dans un domaine pas encore exploré (par moi).

Dans le fichier joint, la colonne A contient les valeurs 1 à 250.
Je souhaite supprimer toutes les lignes des cellules contenant un 2 (c'est à dire 2, 12, tous les 20, 32, 42, etc...)
J'ai essayé :

Code:
Sub supprimer()
    Dim derligne As Integer
    Dim cell As Range
    derligne = Range("A1").End(xlUp).Row
    For Each cell In Range("A1:A" & derligne)
        Set cible = Application.Find(2, cell.Value, 1)
        If Not cible Is Nothing Then
        cell.EntireRow.Select
        Selection.Delete Shift:=xlUp
        End If
    Next cell
End Sub

Bien sûr, cela ne marche pas...:mad:
Pouvez-vous m'aider, s'il vous plaît ?
Merci d'avance.
PS : pas urgent, c'est pour m'entraîner...et pas trop perdre la main...:D
 

Pièces jointes

  • Supprligne.xls
    33.5 KB · Affichages: 50

job75

XLDnaute Barbatruc
Re : Supprimer lignes contenant un "2"

Bonjour Jean-Bernard,

Essayez cette macro :

Code:
Sub supprimer()
    Dim i As Long
    For i = Range("A65536").End(xlUp).Row To 1 Step -1
        If InStr(Cells(i, 1).Text, [COLOR="Red"]2[/COLOR]) Then Rows(i).Delete
    Next
End Sub

A+
 

Pierrot93

XLDnaute Barbatruc
Re : Supprimer lignes contenant un "2"

Bonjour Jean-Bernard, Job

une autre solution avec l'opérateur "like" :

Code:
Option Explicit
Sub supprimer()
Dim i As Long
For i = Range("A65536").End(xlUp).Row To 1 Step -1
    If Cells(i, 1).Value Like "*2*" Then Rows(i).Delete
Next i
End Sub

bonne soirée
@+
 

13GIBE59

XLDnaute Accro
Re : Supprimer lignes contenant un "2"

Bonjour Job75, Pierrot. :)

Merci pour ces solutions !

Job, j'aurai appris aujourd'hui la fonction InStr : je me précipite sur la touche F1...

Pierrot : j'avais pensé à "Like", mais j'avais oublié le "*2*".

Cela dit comment faire avec Like si on ne connaît pas à l'avance le nombre de nombres composant les chiffres (milliers = 4, dizaines de milliers = 5, etc...) ?

A plus.
 

job75

XLDnaute Barbatruc
Re : Supprimer lignes contenant un "2"

Salut Pierrot,

Je vois que tu utilises la propriété Value.

S'il y a une valeur d'erreur dans l'une des cellules => bug.

C'est pour ça que je préfère, dans ce cas, la propriété Text :)

A+
 

Discussions similaires

Statistiques des forums

Discussions
311 720
Messages
2 081 926
Membres
101 842
dernier inscrit
seb0390