Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2013 Modifier un code de sauvegarde

chaelie2015

XLDnaute Accro
Bonjour Forum
Le code ci-dessous réalise les actions suivantes :
  1. Il crée une copie du classeur actif avec un nom de fichier basé sur la valeur de la cellule M2 de la feuille "Récap".
  2. Il enregistre cette copie dans le répertoire actuel.
  3. Si un fichier existant porte le même nom, il demande à l'utilisateur s'il souhaite le remplacer.

VB:
Sub Enregistrer_Copie()
Dim nom$, fichier$
nom = "Evaluation CEO-" & Sheets("Récap").[M2] & ".xlsm"
fichier = ThisWorkbook.Path & "\" & nom
If Dir(fichier) <> "" Then If MsgBox("Le fichier EXCEL '" & nom & "' existe déjà. Voulez-vous le remplacer ?", vbYesNo + vbQuestion) = vbNo Then Exit Sub
ThisWorkbook.SaveCopyAs fichier
MsgBox "Un nouveau fichier EXCEL nommé " & vbCrLf & vbCrLf & nom & vbCrLf & vbCrLf & " a été enregistré dans le répertoire " & vbCrLf & vbCrLf & ThisWorkbook.Path & "."
End Sub

mon souci est lié aux actions suivantes après la création de la copie :
  1. Afficher la copie du fichier créé.
  2. Fermer le fichier initial.
  3. Réinitialiser le fichier initial en appelant deux fonctions dans des modules "EffacerSoumissionnaires" et "EffacerMontantLots".
  4. Effacer trois cellules dans la feuille "BdD CEO" (D2, D4 et D5) et la cellule M2 de la feuille "Récap".

Merci
 

TooFatBoy

XLDnaute Barbatruc
C'est exact, le XLTM est un modèle avec macros.

Tu ouvres le modèle, tu fais les modifications que tu veux, et la sauvegarde se fait "obligatoirement" sous un autre nom de fichier, au format XLSM.
Ainsi le fichier initial reste toujours tel qu'il était au départ.
 

Discussions similaires

  • Question
Microsoft 365 Code VBA
Réponses
10
Affichages
748
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…