Enregistrement auto avec un format déterminé

Bonjour à tous

Je suis totalement nul en VBA, et je recherche une solution qui, je suppose , est réalisable.

J'ai un tableau Excel avec plusieurs onglets différents.

Je souhaiterai qu'en quittant Excel, en cliquant sur un bouton (créé) cela lance une macro pour enregistrer le fichier sur un Disque (serveur) qui reprendrait le nom de l'onglet, la date de l'enregistrement (vendredi 05 avril 2019) et l'heure (22h00)

Ce format d'enregistrement me permet de retrouver facilement mes archives et incrémentes les enregistrements.

J'avais essayé un truc mais bien-sur qui ne fonctionne pas car je N'Y CONNAIS RIEN.

Si quelqu’un veut bien m'aider, ça serait sympa

Je vous remercie d'avance.

Cordialement

Chris

10classeur1.xlsm (12.71 Ko)

Bonjour Chris,

tu était bien parti, il faut juste commencer la macro avec Sub LeNomDeMaMacro()

et finir avec End Sub

Sub Mon_Enregistrement()
    Dim Chemin As String, nom As String, Fichier As String

    Chemin = "G:\Dossier Ascenseur\"

    nom = ActiveSheet.Name  'le nom de l'onglet ou le nom du fichier ?
    'Ajoute la date du jour et l'heure dans le nom du fichier
    Fichier = nom & Format(Date, "yyyymmdd") & "_" & Format(Time, "hhmmss") & ".xls"

    ActiveWorkbook.SaveCopyAs Chemin & Fichier
End Sub

Bonjour i20100

Merci beaucoup pour ton aide, c'est génial, ça marche lol.

J'aurai juste une petite question pour affiner le truc.

peut-on changer le format de date yyyymmdd en dd mmm yyyy

et mettre des séparateurs ou des espaces pour l'heure pour la rendre plus lisible.

Peut-on également protéger le modèle afin de forcer les personnes à cliquer sur le bouton "enregistrer"

ENCORE MERCI d'avance.

Christ21

Pour le format date et heure, c'est bon j'ai trouvé.

Une nouvelle question que je n'arrive pas résoudre, est-il possible qu'une fois l'enregistrement est fait, la feuille qui sert de modèle se ferme toute seule (après le clic sur le bouton)

Merci d'avance, je ne trouve pas la solution.

Cordialement

Une nouvelle question que je n'arrive pas résoudre, est-il possible qu'une fois l'enregistrement est fait, la feuille qui sert de modèle se ferme toute seule (après le clic sur le bouton)

est ce que la macro est mit sur le fichier modele ? le fichier à fermer ?

Une nouvelle question que je n'arrive pas résoudre, est-il possible qu'une fois l'enregistrement est fait, la feuille qui sert de modèle se ferme toute seule (après le clic sur le bouton)

est ce que la macro est mit sur le fichier modele ? le fichier à fermer ?

Bonjour

La macro est mise sur un modèle. Malheureusement on l'a retrouve dans le fichier qui a été enregistré en xls, lorsque que je l'ouvre.

J'ai essayé de modifier la macro pour enregistrer en pdf, malheureusement ça ouvre le fichier enregistré en pdf mais ça l'enregistre encore en xls.

J'aimerai bien que ça l'enregistre en PDF.

Je joints mon fichier.

Je suis vraiment désolé mais je suis vraiment nul

9modele.xlsm (50.50 Ko)

re,

à tester,

Sub Mon_Enregistrement_PDF()
    Dim Chemin As String, Fichier As String

    Chemin = "G:\Dossier Ascenseur\"
    Fichier = ActiveSheet.Name & " " & Format(Date, "dddd mmmm yyyy") & "_" & Format(Time, "hh-mm-ss") & ".pdf"

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin & Fichier, Quality:= _
    xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False

End Sub

re,

à tester,

Sub Mon_Enregistrement_PDF()
    Dim Chemin As String, Fichier As String

    Chemin = "G:\Dossier Ascenseur\"
    Fichier = ActiveSheet.Name & " " & Format(Date, "dddd mmmm yyyy") & "_" & Format(Time, "hh-mm-ss") & ".pdf"

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin & Fichier, Quality:= _
    xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False

End Sub

C'est type top. Tout fonctionne. tu es super sympa, mille MERCI.

Sans abuser si toutefois tu sais comment l'on empêche l'enregistrement du modèle utilisé (ou est enregistrer la macro) lorsqu'on le rempli, ça serait le top car tu as compris que mon niveau de macro était nul..., mais sinon ne te prends pas la tête avec ça je me débrouillerai comme ça, c'est déjà très sympa de ta part;

Et encore MERCI

Bonjour Chris,,

ajouter cette ligne en fin de macro,

ThisWorkbook.Close SaveChanges:=False  ' fermer le classeur sans l'enregistrer et sans message

comme ceci,

Sub Mon_Enregistrement_PDF()
    Dim Chemin As String, Fichier As String

    Chemin = "G:\Dossier Ascenseur\"
    Fichier = ActiveSheet.Name & " " & Format(Date, "dddd mmmm yyyy") & "_" & Format(Time, "hh-mm-ss") & ".pdf"

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin & Fichier, Quality:= _
    xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False

    ThisWorkbook.Close SaveChanges:=False  ' fermer le classeur sans l'enregistrer et sans message
End Sub

Un grand et énorme MERCI

C'est super sympa de ta part.

Rechercher des sujets similaires à "enregistrement auto format determine"