copier une feuille et la nommer

  • Initiateur de la discussion Initiateur de la discussion ennrik
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

E

ennrik

Guest
bonjour à tous,

voila mon petit problème.

j'ai créer une macro qui me permet de copier une feuille puis de la renommer en fonction d'une cellule et enfin vérifie si cette feuille existe et si elle existe je souhaiterais supprimer celle-ci et la remplacer par la nouvelle.

voici mon code:

Sub copyjour()

'copy de la feuille
Sheets("liste de garde").Copy Before:=Sheets(4)
Sheets("liste de garde (2)").Select

Dim Ws As Worksheet
For Each Ws In Worksheets

'verifie si elle existe et la supprime
If Ws.Name = [a3] Then MsgBox "Ce nom de feuille existe déjà !": Sheets("liste de garde (2)").Delete

Next Ws

'nomme la feuille
Sheets("liste de garde (2)").Name = Range("a3").Value

'imprime la feuille
ExecuteExcel4Macro "PRINT(2,1,1,1,,,,,,,,2,,,TRUE,,FALSE)"

'reviens sur la feuille d'origine
Sheets("liste de garde").Select

End Sub


mon soucis se situe au moment ou je supprime ma copie car je ne sais pas recupérer ma feuille qui porte le même nom (ce n'est pas obligatoire) mais je ne sais surtout pas où mettre mon Exit Sub pour fermer ma macro si le nom de ma feuille existe. (au pire j'éfface mon ancienne feuille manuellment et je relance ma macro).

voila mon problème exposé, merci de vos réponses.
 
Re : copier une feuille et la nommer

Avec une gestion d'erreur tu peux faire ça
Code:
Sub test()
Dim FL1 As Worksheet
    Application.DisplayAlerts = False
        On Error Resume Next
            Set FL1 = Worksheets("feuil3")
            If Not FL1 Is Nothing Then FL1.Delete
            Set FL1 = Nothing
        On Error GoTo 0
    Application.DisplayAlerts = False
End Sub
A adapter au contexte qui est le tien 😉
 
Re : copier une feuille et la nommer

après réflexion et essayé nombre de solutions.

voici celle qui marche.

If Ws.Name = [a3] Then MsgBox "Ce nom de feuille existe déjà !": Ws.Delete
c'était tout simple mais j'ai mis un certain temps à trouver.

merci pour la réponse du dessus.

la réponse au cas cela peut servir à un autre.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
XL 2021 listbox
Réponses
18
Affichages
744
Réponses
15
Affichages
788
Réponses
3
Affichages
257
Retour