IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Sauvegarde automatique après enregistrement d'un classeur sous un autre nom


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Chef de projet MOA
    Inscrit en
    Février 2024
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Février 2024
    Messages : 26
    Par défaut Sauvegarde automatique après enregistrement d'un classeur sous un autre nom
    Bonjour,
    Je souhaitais faire une sauvegarde d'un classeur dans un répertoire "SAUVEGARDE" dès lors que quelqu'un y apportait une modification.
    Je me suis dit que le plus simple était peut-être une macro de type : "Private Sub Workbook_afterSave" ainsi dès qu'une personne souhaite sauvegarder le classeur, cela fera une sauvegarde.
    J'ai essayé le code ci-dessous mais cela fait planter Excel et je ne sais pas pourquoi.
    Je souhaite qu'il fasse l'enregistrement du classeur en conservant seulement un exemplaire du fichier par jour s'il y a eu plusieurs modifications dans la journée. Pour cela j'avais mis un display alert = false.
    Je l'ai enlevé au cas où que ce soit cela qui plante mais ce n'est pas le cas.

    Pourriez-vous svp m'aider ?

    Private Sub Workbook_afterSave(ByVal Success As Boolean)
    ActiveWorkbook.SaveAs "C:\Users\xxx\ xxx\Archive\SUIVI-" & Format(Date, "ddmmyyyy") & ".xls"
    ThisWorkbook.activate
    End Sub

  2. #2
    Membre Expert Avatar de Nain porte koi
    Homme Profil pro
    peu importe
    Inscrit en
    Novembre 2023
    Messages
    1 179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : peu importe

    Informations forums :
    Inscription : Novembre 2023
    Messages : 1 179
    Par défaut
    Hello

    attention, quand vous sauvegardez un classeur sous un nouveau nom vous ne travaillez plus le classeur original mais sa copie.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub Workbook_afterSave(ByVal Success As Boolean)
        
        Dim Nom_Complet As String
        Nom_Complet = ActiveWorkbook.FullName
        
        ActiveWorkbook.SaveAs "C:\Users\xxx\ xxx\Archive\SUIVI-" & Format(Date, "ddmmyyyy") & ".xlsx"
        ActiveWorkbook.Close
        
        Workbooks.Open Nom_Complet
        
    End Sub
    Attention aussi à l'extension que vous donnez, normalement et depuis longtemps c'est .xlsX.

  3. #3
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 169
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Il existe la méthode SaveCopyAs pour enregistrer une copie du classeur sans modifier le classeur ouvert en mémoire.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  4. #4
    Membre Expert Avatar de Nain porte koi
    Homme Profil pro
    peu importe
    Inscrit en
    Novembre 2023
    Messages
    1 179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : peu importe

    Informations forums :
    Inscription : Novembre 2023
    Messages : 1 179
    Par défaut
    Oups, merci Philippe

  5. #5
    Membre averti
    Femme Profil pro
    Chef de projet MOA
    Inscrit en
    Février 2024
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Février 2024
    Messages : 26
    Par défaut
    Bonjour,
    Merci beaucoup pour vos retours.
    Je ne comprends pas ce qui "buggait" mais ça marche parfaitement avec votre code et "SaveCopy as"!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Toutes versions] Message d'erreur après enregistrement automatique sous un autre nom en VBA
    Par robinicol dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 04/01/2011, 09h38
  2. Réponses: 1
    Dernier message: 10/05/2010, 14h44
  3. Sauvegarde automatique de fichier excel sous un autre nom
    Par Jonathan Raucy dans le forum Excel
    Réponses: 1
    Dernier message: 30/01/2008, 14h37
  4. Réponses: 19
    Dernier message: 23/11/2007, 01h45
  5. Réponses: 2
    Dernier message: 23/03/2007, 15h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo