VBA EXCEL supprimer les lignes à zéro
slymo
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
slymo Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
slymo Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je souhaite par une macro VBA (je n'ai pas été formé à la programmation), automatiser la suppression de lignes entières quand dans la colonne B il y a zéro (le fichier fait pour le moment 52 feuilles et je souhaite que la macro ne se fasse que sur 50 d'entre elles, et qu'elle fonctionne sur des futures feuilles qui pourraient s'ajouter)
Sur le site, j'ai trouvé un bout de réponse par la macro ci-dessous (que j'ai un peu retouché pour qu'elle se fasse sur la colonne que je souhaite), mais que dois-je rajouter pour qu'elle se fasse sur les feuilles de mon choix ?
Public Sub SupprLigneCellZero_ColB()
Dim x As Long
Dim y As Long
x = Range("B1048576").End(xlUp).Row
For y = x To 1 Step -1
If Cells(y, 2).Value = 0 Then
Rows(y).Delete
End If
Next y
End Sub
Merci pour votre aide
Je souhaite par une macro VBA (je n'ai pas été formé à la programmation), automatiser la suppression de lignes entières quand dans la colonne B il y a zéro (le fichier fait pour le moment 52 feuilles et je souhaite que la macro ne se fasse que sur 50 d'entre elles, et qu'elle fonctionne sur des futures feuilles qui pourraient s'ajouter)
Sur le site, j'ai trouvé un bout de réponse par la macro ci-dessous (que j'ai un peu retouché pour qu'elle se fasse sur la colonne que je souhaite), mais que dois-je rajouter pour qu'elle se fasse sur les feuilles de mon choix ?
Public Sub SupprLigneCellZero_ColB()
Dim x As Long
Dim y As Long
x = Range("B1048576").End(xlUp).Row
For y = x To 1 Step -1
If Cells(y, 2).Value = 0 Then
Rows(y).Delete
End If
Next y
End Sub
Merci pour votre aide
A voir également:
- VBA EXCEL supprimer les lignes à zéro
- Remettre a zero un pc - Guide
- Supprimer rond bleu whatsapp - Guide
- Liste déroulante excel - Guide
- Aller à la ligne excel - Guide
- Supprimer une page word - Guide
1 réponse
Bonjour,
Si les feuilles se suivent tu peux faire une boucle sur les feuiles :
Cdlmnt
Via
Si les feuilles se suivent tu peux faire une boucle sur les feuiles :
Public Sub SupprLigneCellZero_ColB() Dim x As Long Dim y As Long ' boucle sur les feuilles 3 à 50 A ADAPTER en fonction des feuilles à traiter For f=3 to 50 ' ou alors si on veut boucler depuis la 3eme feuille jusqu'à la derniere celle ci étant variable si on augmente le nombre de feuilles : ' For f = 3 to sheets.Count With sheets(f) ' pour ne pas avoir à répéter le nom de la feuille, il sera remplacé dans chaque ligne par un point devant Range, Cells ou Rows x = .("B1048576").End(xlUp).Row For y = x To 1 Step -1 If .Cells(y, 2).Value = 0 Then .Rows(y).Delete ' sur une seuligne évite le end if Next y End With Next f End Sub
Cdlmnt
Via
Etant novice, pourrais-tu stp me faire apparaître que la syntaxe que je dois garder au final (en prenant l'option de boucler de la feuille 3 à la dernière) car avec tes commentaires parmi la macro, je ne suis pas sûr du texte à garder
Merci d'avance
tu supprimes For f=3 to 50
puis tu enlèves l'apostrophe de la ligne
' For f = 3 to sheets.Count pour la rendre active (elle n'est plus écrite en vert)
Cdlmnt
Via