Partager via

Choisir le chemin d'enregistrement lors d'un ActiveWorkbook.SaveCopyAs

Anonyme
2019-10-23T16:32:47+00:00

Bonjour,

Je souhaite utiliser la méthode ActiveWorkbook.SaveCopyAs pour enregistrer un fichier en cours d'utilisation avant sa réinitialisation.

Comment faut-il faire via VBA pour demander à l'utilisateur sous quel nom et emplacement créer une copie d'une fichier en cours d'utilisation ?

Sachant qu'à aucun moment il ne faut quitter le-dit fichier. Ma macro effectuera des modifications sur le fichier en cours une fois que ce dernier aura été sauvegardé dans un emplacement de backup.

Merci d'avance pour votre aide,

Baptiste

Microsoft 365 et Office | Excel | Pour la maison | Windows

Question verrouillée. Cette question a été migrée à partir de la Communauté Support Microsoft. Vous pouvez voter pour indiquer si elle est utile, mais vous ne pouvez pas ajouter de commentaires ou de réponses ni suivre la question.

0 commentaires Aucun commentaire
Réponse acceptée par l’auteur de la question
  1. DanielCo 107.7K Points de réputation
    2019-10-23T17:42:44+00:00

    Bonjour,

    Essaie :

    Set Rep = Application.FileDialog(msoFileDialogFolderPicker)

    Rep.Show

    Dossier = repertoire.SelectedItems(1)

    Tu récupères le nom du répertoire dans "Dossier"

    Cordialement.

    Daniel

    3 personnes ont trouvé cette réponse utile.
    0 commentaires Aucun commentaire

3 réponses supplémentaires

  1. Anonyme
    2019-10-24T14:22:00+00:00

    D'accord ! Je comprends mieux pourquoi cela ne fonctionnait pas.

    Merci pour ton aide Daniel 😊

    Je vais donc me rabattre sur ta première solution.

    Cordialement,

    Baptiste.

    0 commentaires Aucun commentaire
  2. DanielCo 107.7K Points de réputation
    2019-10-24T08:10:28+00:00

    Non, le fichier obtenu étant une copie du fichier, il doit être du même type. Tu ne peux donc pas obtenir un classeur xlsm à partir d'un fichier xlsx et réciproquement.

    Daniel

    0 commentaires Aucun commentaire
  3. Anonyme
    2019-10-23T20:08:11+00:00

    Bonjour Daniel,

    Finalement j'ai plutôt choisi la méthode : Set Rep = Application.FileDialog(msoFileDialogSaveAs) pour enregistrer une copie de mon fichier.

    Par contre est-il possible de sélectionner par défaut l'extension du fichier (xlsm dans mon cas) à appliquer ?

    Cordialement.

    Baptiste

    0 commentaires Aucun commentaire