Enregistrement

Bonjour,

Est-il possible d'enregistrer 1 même feuille Excel pour chaque jour du mois avec une seule commande ou fonction?

Merci d'avance pour vos réponses.

Cordialement

mimicraquelin

Bonjour et bienvenue sur le forum

Réponse : A priori oui mais il faudrait un peu plus de détails.

Bonjour gmb,

Pour préciser, pour le mois de juin, comme pour tous les mois de l'année, de dois enregistrer la feuille "toto.xls" sous le nom de "toto 010614","toto020614"........ jusqu'à "toto300614".

Merci d'avance pour vos réponse, car cela est fastidieux tous les mois

mimicraquelin

Bonjour

Un essai.

Ce code enregistre la Feuil1 du fichier ouvert.

Le fichier Toto doit se trouver dans un dossier. Les nouveaux fichiers seront dans le même dossier.

Sub EnregistrerMois()
Dim Chemin As String, NomFichier As String, Wbk As String, ladate As String
Dim lemois As Date
Dim i As Byte, nb_feuilles As Byte

    Application.ScreenUpdating = False
    Chemin = ActiveWorkbook.Path
    Wbk = Split(ActiveWorkbook.Name, ".")(0)
    lemois = InputBox(vbNullString, "Quel Mois", "Saisir sous la forme 01/01/2014")
    nb_feuilles = Day(DateSerial(Year(lemois), Month(lemois) + 1, 1) - 1)

    For i = 1 To nb_feuilles
                ActiveWorkbook.Sheets("Feuil1").Copy
                 ladate = Format(DateSerial(Year(lemois), Month(lemois), i), "ddmmyy")
                NomFichier = Wbk & "_" & ladate

            Application.DisplayAlerts = False

            ActiveWorkbook.SaveAs Filename:=Chemin & "\" & NomFichier
            ActiveWorkbook.Close Savechanges:=False
    Next i

End Sub

Amicalement

Nad

Merci Nad;

Je vais "tenter" de mettre en oeuvre la macro; je pratique très peu les macros.

Amicalement

mimicraquelin

Bonsoir Nad,

Cela fonctionne par rapport à ma dernière explication mais cela ne correspond pas à ce que je souhaite;

En faite je souhaite enregistrer, pour le mois de juin, le classeur toto contenant 3 feuilles sous le nom 01 06 2014 jusqu'à 30 06 2014, cela pour chaque mois.

Désolé pour le manque de clarté, en espérant avoir bien décrit mon problème.

Amicalement

mimicraquelin

Bonjour

Ce n'est pas encore très clair.

Si la différence entre mon code et ta demande est juste le nombre de feuilles à copier (3 d'après ce que tu dis), tu modifies cette ligne

For i = 1 To nb_feuilles
                   ActiveWorkbook.Sheets("Feuil1").Copy

Par celle-ci

For i = 1 To nb_feuilles
                ActiveWorkbook.Sheets(Array("Feuil1", "Feuil2", "Feuil3")).Copy

En modifiant les noms des feuilles si nécessaire

Si ce n'est pas ça, explique différemment.

Amicalement

Nad

Bonjour Nad,

C'est impec!!!

Merci pour la solution.

A+ pour d'autres questions

Amicalement

mimicraquelin

Rechercher des sujets similaires à "enregistrement"