Macro enregistrer un fichier sur clé usb

libellule85

XLDnaute Accro
Bonsoir le forum,
J'ai besoin une nouvelle fois de vos lumières...
Avec l'enregistreur de macro, j'ai obtenu la macro suivante pour enregistrer mon fichier Toto.xlsm sur une clé usb à l'adresse "F:\20 01 13" (j'ai paramétré la clé pour qu'elle s'appelle toujours F:) mais je veux qu'il remplace l'ancien fichier qui y était et qu'elle ne me demande pas à chaque fois de confirmer ce remplacement : comment faire ?
D'avance merci pour votre aide.
VB:
Sub Macro2()
    ActiveWorkbook.SaveAs Filename:="F:\20 01 13\Toto.xlsm", _
        FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
End Sub
NB : Car ce que je veux faire : c'est que si je lance la macro cela n'enregistre que sur la clé, et que si je clique sur la disquette d'Excel cela l'enregistre sur le disque dur.
 

Lone-wolf

XLDnaute Barbatruc
Bonsoir Libellule :), le Forum :)

VB:
Option Explicit
Sub Macro2()
Dim Fichier$, Chemin$

Chemin = "F:\20 01 13\"
Fichier ="Toto.xlsm"
Kill(Chemin & Fichier)

    ActiveWorkbook.SaveAs Filename:=Chemin & fichier, _
        FileFormat:=52, CreateBackup:=False
End Sub
 
Dernière édition:

libellule85

XLDnaute Accro
Bonsoir Lone-wolf,
Merci beaucoup pour ta réponse, je viens d'essayer ta macro : la première fois elle a marché impeccable mais la deuxième fois le message d'erreur suivant apparaît quand on veut lancer la macro : "Erreur d'exécution 70 : permission refusée " et demande de débogage à la ligne Kill(Chemin & Fichier).

La manip' que j'ai faite :
1° enregistrer sur F
2° enregistre sur C
Et qq minutes après en voulant enregistrer sur F que l'erreur est apparue
 

Lone-wolf

XLDnaute Barbatruc
Re libellule

Si tu as toujours la clé dans l'ordi, enlève-la et refait le test pour voir. Attention, si tu veux supprimer le fichier alors qu'il n'existe pas, il va prendre en considération le classeur ouvert. Je pense que ça vient de la, mais pas vraiment sûr.
 

Lone-wolf

XLDnaute Barbatruc
Re

Désolé, j'aurais dû y penser avant. Essaie comme ceci

VB:
Option Explicit

Sub Save_Wbk()
Dim Fichier$, Chemin$
Dim AncienNom$, NouveauNom$

  AncienNom = "C:\Users\" & Environ("Username") & "\Toto.xlsm"
  NouveauNom = "C:\Users\" & Environ("Username") & "\Classeur1.xlsm"

  Chemin = ThisWorkbook.Path & "\"
  Fichier = "Toto.xlsm"

  If Dir(AncienNom) <> "" Then Name AncienNom As NouveauNom

  Application.DisplayAlerts = False
  ActiveWorkbook.SaveAs Filename:=Chemin & Fichier, _
  FileFormat:=52, CreateBackup:=False
  Activeworkbook.save
  Application.Quit
End Sub
 
Dernière édition:

Haut Bas