Macro copie de feuille Excel avec nouveau nom

  • Initiateur de la discussion Initiateur de la discussion fab1234
  • 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 !

F

fab1234

Guest
Bonjour à tous,

Je gère mon budget sur excel avec une feuille par mois, nomée par exemple 0706 (07 pour le mois et 06 pour l'année).
J'ai fait une petite macro (je suis novice !) qui copie la feuille précédente en la nomant au mois suivant.
Mon problème est que c'est une macro faite par enregistrement et bien entendue elle a pris en compte le nom des fichier existant et donc ne marche qu'une fois !
Je ne sais pas comment écrire "faire une copie de la feuille en cours et la renommer au mois suivant.

J'espère avoir été clair (c'est pas sure !)

Merci de votre aide

A bientôt

Fab
 
Re : Macro copie de feuille Excel avec nouveau nom

Salut Fab,

Pour faire ce que tu veux, tu peux peut etre t'inspirer du code suivant :
PHP:
Sub test()
nb = Sheets.Count
Sheets(nb).Copy After:=Sheets(nb)
ActiveSheet.Name = Left(Sheets(nb).Name, 2) & Right(Sheets(nb).Name, 2)
End Sub

@+
 
Re : Macro copie de feuille Excel avec nouveau nom

Bonsoir Fab1234, Porcinet82 et le forum,

Une version un peu différente :

Sub Renommer()
ActiveSheet.Copy After:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = Format(Date, "mmyy")
End Sub

Cordialement

Bernard
 
Re : Macro copie de feuille Excel avec nouveau nom

Merci, mais ces 2 macros ne font que creer des feuilles du nom de 'fel(2)' ou fel(3), je vais essayer de les modifier à moins que vous ayez d'autres suggestions ?

à bientôt

Fab
 
Re : Macro copie de feuille Excel avec nouveau nom

salut fab,

essaie ceci :
Code:
Sub CopierFeuille()
    Dim strNom As String
    Dim intMois As Integer
    Dim intAnnee As Integer
    
    ' se positionner sur la feuille la plus "récente"
    intMois = Left(ActiveSheet.Name, 2)
    intAnnee = Right(ActiveSheet.Name, 2)
    
    intMois = intMois + 1
    If intMois = 13 Then
        intMois = 1
        intAnnee = intAnnee + 1
    End If
    strNom = Format(intMois, "00") & Format(intAnnee, "00")
    
    ActiveSheet.Copy After:=Sheets(ActiveWorkbook.Sheets.Count)
    ActiveSheet.Name = strNom
End Sub
 
Re : Macro copie de feuille Excel avec nouveau nom

Bonsoir a tous,

Fab, tu dis J'ai fait une petite macro (je suis novice !) qui copie la feuille précédente en la nomant au mois suivant, donc nous avons supposé qu'il y avait deja une feuille de créée au format 0706 et donc la ca fonctionne.

@+
 
- 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

D
  • Question Question
Réponses
5
Affichages
250
Didierpasdoué
D
A
  • Question Question
Réponses
8
Affichages
952
Retour