Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

copie onglet avec date

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

vark

XLDnaute Nouveau
bonjour
je suis debutant
je voudrais copier ma feuil1 en la renomment par une date
explication ma nouvelle feuille serai le '1-janv-2010'
mais je voudrais aussi la copie du 1-janv-2010 au 31-janv-2010
et aussi que je puisse choisir le mois ex: du 1-mars au 31 mars 2010
j'ai trouver un code vba qui me demande bien la date mais ne copie pas ma feuille et je peux pas choisir le mois
 
Re : copie onglet avec date

Bonjour vark
Tout vient à qui sait attendre...
(Des fois, on bosse aussi pour manger.)
Essayez ceci :
Code:
[COLOR="DarkSlateGray"][B]Sub Calendjourfeuille()
Dim mois_année, x&, y&, i&
   Application.ScreenUpdating = False
   mois_année = Val(InputBox("Quelle date ? (Format m-aaaa)"))
   If mois_année = 0 Then Exit Sub
   x = DateValue("1-" & mois_année)
   y = DateSerial(Year(x), 1 + Month(x), 1) - 1
   For i = 0 To y - x
      ActiveWorkbook.Sheets("Feuil1").Copy after:=Sheets(Sheets.Count)
      ActiveSheet.Name = Format(x + i, "dd-mmm-yyyy")
   Next
End Sub[/B][/COLOR]
(Attention : ce code produira une erreur si vous essayez de créer une feuille déjà existante.)​
ROGER2327
#3396


14 Floréal An CCXVIII
2010-W18-1T16:47:23Z
 
Dernière édition:
Re : copie onglet avec date

Re...
Il y avait une petite erreur dans le code : je l'ai corrigée dans mon précédent message.
(Dernière modification par ROGER2327 ; Aujourd'hui à 16h53. Motif: Une petite erreur dans le code ! )
ROGER2327
#3397


14 Floréal An CCXVIII
2010-W18-1T17:30:53Z
 
Re : copie onglet avec date

Re...
(...) c'est ce que voulais et ca marche impeccable (...)
Tant mieux !
Pour compléter, et afin de gérer les tentatives de création de doublons :
Code:
[COLOR="DarkSlateGray"][B]Sub Calendjourfeuille()
Dim mois_année, x&, y&, i&
Dim msgErr$, nErr As Byte
   Application.ScreenUpdating = False
   mois_année = Val(InputBox("Quelle date ? (Format m-aaaa)"))
   If mois_année = 0 Then Exit Sub
   x = DateValue("1-" & mois_année)
   y = DateSerial(Year(x), 1 + Month(x), 1) - 1
   For i = 0 To y - x
      ActiveWorkbook.Sheets("Feuil1").Copy after:=Sheets(Sheets.Count)
      On Error GoTo E
      ActiveSheet.Name = Format(x + i, "dd-mmm-yyyy")
R:    On Error GoTo 0
   Next
[COLOR="SeaGreen"]'[/COLOR]
   If nErr Then
      If nErr > y - x Then
         MsgBox "Aucune feuille n'a été créée."
      Else
         MsgBox "L" & IIf(nErr > 1, "es", "a") & " feuille" & IIf(nErr > 1, "s", "") & " :" & _
            msgErr & vbLf & "n'" & IIf(nErr > 1, "ont", "a") & " pas été créée" & _
            IIf(nErr > 1, "s", "") & " car elle" & IIf(nErr > 1, "s", "") & " existai" & _
            IIf(nErr > 1, "en", "") & "t déjà."
      End If
   End If
[COLOR="SeaGreen"]'[/COLOR]
Exit Sub
E: nErr = 1 + nErr
   msgErr = msgErr & vbLf & Format(x + i, "dd-mmm-yyyy")
   Application.DisplayAlerts = False
   ActiveSheet.Delete
   Application.DisplayAlerts = True
   Resume R
End Sub[/B][/COLOR]
ROGER2327
#3401


15 Floréal An CCXVIII
2010-W18-2T23:51:28Z
 
- 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

Discussions similaires

Réponses
40
Affichages
3 K
Réponses
17
Affichages
2 K
Réponses
12
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…