Effacer des feuilles sauf celles nommées...
JB22
-
JB22 -
JB22 -
Bonjour,
J' ai un ficher EXCEL comprenant diverses feuilles que je dois conserver et d' autres, commençant par "R", que je veux supprimer.
J' ai la macro suivante qui supprime les feuilles que je veux supprimer mais qui supprime également les deux dernières feuilles qui doivent être conserver.
For Each sh In Worksheets
If sh.Name <> "Liste" And sh.Name <> "F.P.8" And sh.Name <> "VPC" And sh.Name <> "F.MERE" And sh.Name <> "Lisez-moi" _
And sh.Name <> "POUV" And sh.Name <> "FormVPC" And sh.Name <> "ConvAG" And sh.Name <> "P.V.A.G" _
Then sh.Delete
Next
Un grand merci pour l' aide.
J' ai un ficher EXCEL comprenant diverses feuilles que je dois conserver et d' autres, commençant par "R", que je veux supprimer.
J' ai la macro suivante qui supprime les feuilles que je veux supprimer mais qui supprime également les deux dernières feuilles qui doivent être conserver.
For Each sh In Worksheets
If sh.Name <> "Liste" And sh.Name <> "F.P.8" And sh.Name <> "VPC" And sh.Name <> "F.MERE" And sh.Name <> "Lisez-moi" _
And sh.Name <> "POUV" And sh.Name <> "FormVPC" And sh.Name <> "ConvAG" And sh.Name <> "P.V.A.G" _
Then sh.Delete
Next
Un grand merci pour l' aide.
A voir également:
- Vba supprimer toutes les feuilles sauf une
- Supprimer rond bleu whatsapp - Guide
- Supprimer une page word - Guide
- Comment faire un livret avec des feuilles a4 - Guide
- Comment supprimer une application préinstallée sur android - Guide
- Supprimer pub youtube - Accueil - Streaming
4 réponses
Bonjour,
comme ceci:
comme ceci:
Option Explicit
Sub supprimer()
'Déclare la variable objet Worksheet
Dim Ws As Worksheet
Application.DisplayAlerts = False
'Boucle sur toutes les feuille de calcul du classeur. Les onglets graphiques ne sont pas pris
'en compte.
'ThisWorkbook correspond à l'objet classeur contenant la macro
For Each Ws In ThisWorkbook.Worksheets
If Ws.Name <> "Feuil1" And Ws.Name <> "Feuil3" Then 'adapter nom feuille à conserver
Ws.Delete
End If
Next Ws
Application.DisplayAlerts = True
End Sub
Merci de vous avoir penché, rapidement, sur mon problème.
A la ligne 13 Next Ws j' ai le message suivant :" Référence de contrôle incorrect dans Next"
Cdt,
JB22
A la ligne 13 Next Ws j' ai le message suivant :" Référence de contrôle incorrect dans Next"
Cdt,
JB22
un problème dans la dénomination des feuilles à conserver
si tu ne veux garder que les 2 dernières feuilles tu peux faire comme ceci:
@+ Le Pivert
si tu ne veux garder que les 2 dernières feuilles tu peux faire comme ceci:
Option Explicit
Sub supprimer()
'Déclare la variable objet Worksheet
Dim Ws As Worksheet
Application.DisplayAlerts = False
'Boucle sur toutes les feuille de calcul du classeur. Les onglets graphiques ne sont pas pris
'en compte.
'ThisWorkbook correspond à l'objet classeur contenant la macro
For Each Ws In ThisWorkbook.Worksheets
If Ws.Index <> Worksheets.Count And Ws.Index <> Worksheets.Count - 1 Then
Ws.Delete
End If
Next Ws
Application.DisplayAlerts = True
End Sub
@+ Le Pivert
Pour comprendre mon problème je vous expose les données.
Il s' agit de la gestion des votes en Assemblée générale, j' ai donc des feuilles qui doivent être conservées et des feuilles correspondantes à chaque question à l' ordre du jour, ces feuilles ne doivent pas être conservées dans le dossier d' une nouvelle A.G.
Toutes les feuilles de vote crées commencent par "R."
Dans la macro de création d" un dossier pour une nouvelle A?G. je veux supprimer les feuilles de résolution de l' ancienne A.G.
Je reste à votre disposition pour toutes informations complémentaires, je vous remercie de votre aide.
Il s' agit de la gestion des votes en Assemblée générale, j' ai donc des feuilles qui doivent être conservées et des feuilles correspondantes à chaque question à l' ordre du jour, ces feuilles ne doivent pas être conservées dans le dossier d' une nouvelle A.G.
Toutes les feuilles de vote crées commencent par "R."
Dans la macro de création d" un dossier pour une nouvelle A?G. je veux supprimer les feuilles de résolution de l' ancienne A.G.
Je reste à votre disposition pour toutes informations complémentaires, je vous remercie de votre aide.
Si j'ai bien compris tu veux supprimer les feuilles commençant par la lettre R ou r, c'est bien cela?
Voilà
@+ le Pivert
Option Explicit
Option Compare Text
Sub supprimer()
'Déclare la variable objet Worksheet
Dim Ws As Worksheet
Application.DisplayAlerts = False
'Boucle sur toutes les feuille de calcul du classeur. Les onglets graphiques ne sont pas pris
'en compte.
'ThisWorkbook correspond à l'objet classeur contenant la macro
For Each Ws In ThisWorkbook.Worksheets
If Left(Ws.Name, 1) = "R" Then
Ws.Delete
End If
Next Ws
Application.DisplayAlerts = True
End Sub
Voilà
@+ le Pivert