Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

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...
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...
 

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

Réponses
1
Affichages
170
Réponses
6
Affichages
142
Réponses
0
Affichages
155
Réponses
2
Affichages
120
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…