Bonjour,
comment coder ceci en VBA :
Dans une colonne definie si j'ai la valeur 0 alors je supprime la ligne correspondante.
Merci
Bonjour,
comment coder ceci en VBA :
Dans une colonne definie si j'ai la valeur 0 alors je supprime la ligne correspondante.
Merci
excel ?
déjà il faut définir le "nombre" de ligne de la colonne concernée...
dis'ons ... tant que la colonne n'est pas vide...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Sub EffaceLg0() Dim i As Integer Dim C As Range 'Colonne... i = 1 'Colonne D Set C = Columns("D") While C.Cells(i) <> "" While C.Cells(i) = 0 C.Cells(i).EntireRow.Delete 'Detruit la ligne Wend i = i + 1 Wend End Sub![]()
Bonjour,
Tu peux aussi placer ce code.Ce code suppose que tu as des zéros dans la colonne C, entre C1 et C100.
Pour rétablir la vue de tes lignes
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Sub SupprimerLignes() Dim cel As Range, PlageTest, i i = 1 Set PlageTest = Range("C1:C100") For Each cel In PlageTest If cel.Value = "0" Then i = i + 1 cel.Select Selection.EntireRow.Hidden = True End If Next cel End Sub
jpleroisse
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Sub RéafficherLignes() Columns("C:C").Select Selection.EntireRow.Hidden = False End Sub
Ce code n'apporte rien de plus à la solution proposée par bbil sinon à cacher au lieu de supprimer comme demandé dans la question -Envoyé par leroissejp
de plus l'utilisation des select et selection est à proscrire - s'il s'agit purement et simplement de recopier le code produit par l'enregistreur de macro
autant qu'il le fasse lui-même en lui indiquant comment s'en servir, non ?![]()
Bonjour DarkVader,
J'étais en train de composer ma réponse quand bbil a répondu.
Bien sur, j'aurais pu lui conseiller d'utiliser l'enregistreur de macro pour qu'il apprenne à s'en servir (mais j'ai tendance à répondre un peu trop vite, donc bien souvent s'en trop réfléchir) là, tu as raison.
Quand au code de bbil, chez moi, celà provoque une boucle infinie(je n'ai pas cherché à corriger).
jpleroisse
tu as pris le code tel quel ou tu la modifier ... avantEnvoyé par leroissejp
![]()
Re,
bbil,je ne sais pas ce qui c'est passé, je viens de faire un Copier/Coller de ton code et celà fonctionne,j'ai dù faire une erreur tantôt.
Désolé (Il faudra quand même que je m'applique à ne pas répondre si vite et à bien vérifier ce que je tappes à l'avenir)
jpleroisse
Il me semblait pourtant t'avoir déjà prévenuEnvoyé par leroissejp
![]()
Partager