Macro Copier une feuille avec date et nom

batman666

XLDnaute Nouveau
Salut

J'utilise un classeur Excel dans lequel je dois ajouter une copie d'une feuille existante de façon périodique afin de conserver des données saisie antérieurement et en saisir de nouvelle.

Pour l'instant je parvient, à partir d'une MACRO, à copier ladite feuille, intitulée originalement :p DONNÉES et créer ainsi DONNÉES(2), DONNÉES(3), etc.

1) J'aimerais trouvé une MACRO qui me permettrait de faire la même chose en ajoutant cette fois la date du jour sous la forme AAAA-MM-JJ. Je veux donc obtenir quelques choses du genre DONNÉES-2010-06-04.

2)En outre, j'aimerais que les feuilles ainsi ajouté soit placé en ordre chronologique suivant la feuilles DONNÉES initiale.

Avez vous des idées :confused:

Merci d'avance! :D
 

ROGER2327

XLDnaute Barbatruc
Re : Macro Copier une feuille avec date et nom

Bonjour batman666, JCGL
Voyez si le classeur joint peut s'adapter à vos besoins.​
ROGER2327
#3636


Mercredi 18 Merdre 137 (Saint Anal, cordelier et Sainte Foire, anagogue, SQ)
16 Prairial An CCXVIII
2010-W22-5T19:51:09Z
 

Pièces jointes

  • Copie_de_feuille.xls
    23.5 KB · Affichages: 300
  • Copie_de_feuille.xls
    23.5 KB · Affichages: 319
  • Copie_de_feuille.xls
    23.5 KB · Affichages: 308

batman666

XLDnaute Nouveau
Re : Macro Copier une feuille avec date et nom

Salut

J'utilise un classeur Excel dans lequel je dois ajouter une copie d'une feuille existante de façon périodique afin de conserver des données saisie antérieurement et en saisir de nouvelle.

Pour l'instant je parvient, à partir d'une MACRO, à copier ladite feuille, intitulée originalement :p DONNÉES et créer ainsi DONNÉES(2), DONNÉES(3), etc.

1) J'aimerais trouvé une MACRO qui me permettrait de faire la même chose en ajoutant cette fois la date du jour sous la forme AAAA-MM-JJ. Je veux donc obtenir quelques choses du genre DONNÉES-2010-06-04.

2)En outre, j'aimerais que les feuilles ainsi ajouté soit placé en ordre chronologique suivant la feuilles DONNÉES initiale.

Avez vous des idées :confused:

Merci d'avance! :D


:eek: Voici donc mon code, pour compléter ma questions. Graçe à celui-ci je parvient a créé une feuilles dont l'onglet affiche la date de sa création. Mais comme je l'indique dans ma question, je veux pouvoir aussi afficher le nom de l'onglet ainsi recopier et placer ces nouvelles feuilles en ordre chronologique à la suite de l'original

Sub AJOUTAIGU()
'
' AJOUTDONNÉESMacro
' Macro recorded 2009-05-15
'
ActiveWorkbook.Unprotect ("password")
'ajoute une feuille
Sheets("DONNÉES").Select
Cells.Select ' Sélection totale de la feuille
Selection.Copy ' Copie
ActiveSheet.Select
Range("I5").Select ' Positionnement du curseur en I5
'Lecture de la date du jour actuel en I1 (date du système par formule =MAINTENANT())
DateJour = Range("A49").Value
' Extraction de JJ-MM-AAAA Le nom de feuille n'accepte pas les /
JourDate = Left(DateJour, 4) & "-" & Mid(DateJour, 6, 2) & "-" & Mid(DateJour, 9, 2)
Sheets.Add ' Ajout d'une nouvelle feuille
ActiveSheet.Paste ' Collage de la feuille copiée précédemment
ActiveSheet.Name = JourDate ' Attribution du nom de la nouvelle feuille

ActiveWorkbook.Protect ("password")
End Sub

J'attends vos idées... et encore merci
 

batman666

XLDnaute Nouveau
Re : Macro Copier une feuille avec date et nom

Re...
Certes !
Encore faudrait-il réagir aux propositions faites...
ROGER2327
#3640


Jeudi 19 Merdre 137 (Sainte Fétatoire, super, SQ)
17 Prairial An CCXVIII
2010-W22-6T07:00:17Z

:( Ta macro fait exactement ce que je veux, mais je suis incapable de voir la le code que tu as utilisé, et donc, je suis incapable de l'adapter....
 

batman666

XLDnaute Nouveau
Re : Macro Copier une feuille avec date et nom

Merci pour ta réponse rapide Roger2327... Ta solution semble exactement faire ce que je veux... Il ne me reste qu'à tenter de l'adapter à mon problème...;)

Je te reviens la-dessus bientôt
 

batman666

XLDnaute Nouveau
Re : Macro Copier une feuille avec date et nom

Bonjour Roger

Mes essaies ont été infructueux... Pcq je suis pas habile en VB mais aussi parce que j'utilise un bouton créer avec l'outil formulaire et non l'outil « boite à outil de contrôle»


Y-a-t-il moyen d'ajuster ton code pour tenir compte que ta macro sera affecté a un bouton créer avec l'outil formulaire d'Excel...

Merci
 

ROGER2327

XLDnaute Barbatruc
Re : Macro Copier une feuille avec date et nom

Re...
Le plus simple serait de dire exactement ce que vous voulez faire : il n'était pas question de formulaire dans votre demande initiale... (Joindre un classeur-support est aussi une bonne idée : ça évite de travailler à l'aveuglette.)
Mais voyons ce qu'on peut faire.
Dans le classeur joint, j'ai supprimé le bouton de feuille.
J'ai installé un formulaire portant un bouton Archiver. Pour voir le formulaire, exécutez la procédure Toto.


Code dans le module Module1 :
Code:
[COLOR="DarkSlateGray"][B]Sub toto()
   UserForm1.Show vbModeless
End Sub[/B][/COLOR]

Code dans le formulaire :
Code:
[COLOR="DarkSlateGray"][B]Private Sub CommandButton1_Click()
   archive Sheets("Données")
End Sub

Sub archive(Sh As Worksheet)
Dim i!, Suf!
   With Sh
      .Copy After:=Sheets(.Name)
      On Error GoTo E
      ActiveSheet.Name = .Name & Format(Now(), "yy-mm-dd") & IIf(Suf, "(" & Suf & ")", "")
      On Error GoTo 0
      .Cells.Copy
      [A1].PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
      Application.CutCopyMode = False
      Range("A1").Select
      .Activate
   End With
Exit Sub
E: Suf = Suf + 1: Resume
End Sub[/B][/COLOR]

Voyez ce que vous pouvez tirer de cela...​
ROGER2327
#3651


Dimanche 22 Merdre 137 (Ontogénie pataphysique, SPp)
20 Prairial An CCXVIII
2010-W23-2T07:46:32Z
 

Pièces jointes

  • Copie_de_feuille_3651.xls
    24.5 KB · Affichages: 225

batman666

XLDnaute Nouveau
Re : Macro Copier une feuille avec date et nom

Salut

ta solution fonctionne à merveille Roger...
je suis maintenant rendu à une autre étape. je veux générer automatiquement un graphique à partir du total inscrits dans la CELLULE «totale» des feuilles ainsi créée. Mon but est de montrer la progression des résultats dans le temps...

je sais comment faire un graphique, le hic c'est que le nombre de feuilles et donc de «totale» varie dans le temps.

Je vous rappelle que, à l'exception de la feuilles originale appelé DONNÉÉS, les feuilles ainsi créer porte un nom qui à*la forme suivante (DONNÉES DATE DE CRÉATION).

merci encore une fois pour votre aide:confused:
 

Staple1600

XLDnaute Barbatruc
Re : Macro Copier une feuille avec date et nom

Bonsoir à tous


ROGER2327: Comme il n'a pas été possible de vous envoyer de MP.

Je vous pose la question ici

copie du MP que j'ai essayé de vous envoyer
Bonjour ROGER2327

J'ai modifié votre code ainsi et je voudrais savoir ce que vous en pensez, svp.
Est-ce une bonne chose d'éviter le copier/coller ?
(afin de pas utiliser le presse-papier)
Code:
Sub archive(Sh As Worksheet)
Dim i!, Suf!
   With Sh
      .Copy , Sheets(Sheets.Count)
      On Error GoTo E
      ActiveSheet.Name = .Name & Format(Now(), "yy-mm-dd") &  IIf(Suf, "(" & Suf & ")", "")
      On Error GoTo 0
      With ActiveSheet.UsedRange.Cells
        .Value = .Value
      End With
   End With
Exit Sub
E: Suf = Suf + 1: Resume
End Sub
batman666:
A'u bout d'un certain nombre de fois de copie d'une feuille, un bug se produit
(il y a une solution avec exemple de code sur le site de Microsoft)
 
Dernière édition:

ROGER2327

XLDnaute Barbatruc
Re : Macro Copier une feuille avec date et nom

Re...
(...)
ROGER2327: Comme il n'a pas été possible de vous envoyer de MP.

Je vous pose la question ici
(...)

Bonjour Staple1600
J'ai effectivement un problème avec les messages privés depuis deux semaines, et je ne peux plus en émettre, ni même répondre à ceux que je reçois.

Quant à votre proposition de code, elle semble intéressante puisque vous obtenez le résultat souhaité sans encombrer le presse papier. Quant à savoir si c'est une bonne chose d'éviter le copier/coller, je ne saurais le dire : je ne sais pas comment fonctionne le code interne.
En tout cas, je tenterai de réutiliser votre technique : des expériences répétées permettront d'en confirmer ou non la validité.
Cordialement,​
ROGER2327
#3762


Mardi 10 Gidouille 137 (Saint Boudin, recteur, SQ)
6 Messidor An CCXVIII
2010-W25-4T09:05:02Z
 

Staple1600

XLDnaute Barbatruc
Re : Macro Copier une feuille avec date et nom

Bonsoir à tous


ROGER2327: voila ce qui s'affiche quand je vous envoie un MP
E_MP.Roger2327.gif


A propos du fil:
Avez-vous vu le lien (site de Microsoft ,relatif à un bug) que je cite dans mon précédent message ?
Qu'en pensez-vous ?
 

ROGER2327

XLDnaute Barbatruc
Re : Macro Copier une feuille avec date et nom

Re...
Le problème de messages privés est réglé : ma boîte est débloquée.

Quant au bug et aux explications données par Microsoft, je n'ai guère de commentaire à faire, si ce n'est de remarquer que :
  1. La solution indiquée (que je n'ai pas testé sous la forme exacte proposée par Microsoft) relève plus du bricolage pifométrique que de quoi que ce soit d'autre. La remarque
    Le nombre d'opérations de copie d'une feuille de calcul que vous pouvez effectuer avant de devoir enregistrer le classeur varie selon la taille de la feuille de calcul.
    est particulièrement savoureuse et me rappelle la plaisanterie classique des instructeurs militaires d'autrefois :
    Question : Combien de temps met le fût du canon pour refroidir ?
    Réponse : Un certain temps...​
    C'est évident, il suffisait d'y penser.

  2. Ce problème est connu depuis (au moins) Excel97 et que les versions qui se succèdent héritent du défaut sans qu'il y soit jamais remédié... Sans doute un excès de professionnalisme.
Cordialement,
ROGER2327
#3767


Mardi 10 Gidouille 137 (Saint Boudin, recteur, SQ)
6 Messidor An CCXVIII
2010-W25-4T23:49:08Z
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 545
Messages
2 089 453
Membres
104 169
dernier inscrit
alain_geremy