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

XL 2010 Suppression cellule contenant 0

Michael78

XLDnaute Nouveau
Bonjour,
Après plusieurs recherche j'ai trouvé un code permettant de supprimer les cellules contenant le mot "Faux". Je parle bien de suppression, avec les cellules du dessous qui remontent.
Sauf que en réalité, la macro n'efface pas toutes les cellules contenant la valeur. Ils faut que je la lance plusieurs fois.

Pour être précis:
La colonne A est incrémenté de A3 à A100 via une formule (=si(....)), je transforme la formule en valeur (copier/coller option de collage valeurs)

voici le code trouvée :

Sub SupCel()
For Each c In Range("A3", Range("A100"))
If InStr(c.Value, "Faux") Then c.Delete
Next
End Sub

Peut-être avec For c = 3 To 100.... mais je n'arrive pas à écrire correctement la boucle...

Merci pour votre aide
 

frangy

XLDnaute Occasionnel
Bonjour,

Essaie comme cela ...
VB:
Sub SupCel()
Dim Ligne As Integer
    For Ligne = 100 To 3 Step -1
        If InStr(Range("A" & Ligne).Value, "Faux") Then Range("A" & Ligne).Delete
    Next Ligne
End Sub
Cordialement.
 

Michael78

XLDnaute Nouveau
Bonjour Frangy

Merci pour votre réponse qui fonctionne à un détail... cela me laisse une ligne (la dernière) "Faux". J'ai essayé en augmentant le plage (For ligne = 150 to...) mais cela ne change rien.

C'est pas très grave... au cas où je tricherais avec un effacement de la dernière ligne.

Merci..
 

Michael78

XLDnaute Nouveau
.... non. "Faux" est le résultat d'une formule =si(...;....;"Faux").

En continuant de fouiner j'ai trouvé un code que j'ai réussi à adapter. Le voici :

Dim Cellule As Long
Dim i As Integer
For i = 1 To 6
For Cellule = 100 To 3 Step -1
If Cells(Cellule, i) Is Nothing Or Cells(Cellule, i).Value = "Faux" Or Cells(Cellule, i).Value = "0" Then
Cells(Cellule, i).Delete xlUp
End If
Next Cellule
Next i

Merci pour le temps passé....
 

Discussions similaires

Réponses
7
Affichages
329
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…