Enregistrement excel via macro vba [Résolu/Fermé]

Signaler
-
 vwtroudy -
Bonjour,

Pour les pro de vba...
Je cherche via un "bouton magique"
A faire un enregistrement simultané vers deux répertoires. J'ai utilisé la formule:

Private Sub CommandButton1_Click()
ThisWorkbook.SaveCopyAs "M:\Planning.xls"
ThisWorkbook.SaveCopyAs "U:\Planning.xls"
End Sub

le pb est que si j'ai ouvert le fichier depuis le repertoire M, il y a un bug sur la 2eme ligne car le fichier est déjà ouvert et pareil depuis le U avec une erreur sur la 3eme ligne.

je pense que l'on peut résoudre ce pb avec des conditions "If" et "Then" mais la je cale un peu.
merci de votre aide.

4 réponses

Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 102
bonjour

Comme ceci, si j'ai compris ta logique :
Private Sub CommandButton1_Click()
if ThisWorkbook.fullname = "M:\Planning.xls" then
     ThisWorkbook.SaveCopyAs "U:\Planning.xls"
else
     ThisWorkbook.SaveCopyAs "M:\Planning.xls"
end if     
ThisWorkbook.Save
End Sub

Le code n'est pas testé car je n'ai pas ces codes lecteurs.
Messages postés
23411
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
4 août 2020
6 276
Bonjour,

ou bien
Private Sub CommandButton1_Click()
ThisWorkbook.Save
on error resume next
ThisWorkbook.SaveCopyAs "M:\Planning.xls"
ThisWorkbook.SaveCopyAs "U:\Planning.xls"
on error goto 0

End Sub

non testé également

eric
Vos réponse m'ont bien aidé, mais j'ai complété mon code pour sécurisé un peu mon fichier et limiter les enregistrement à certaine personne. Aujourd'hui, je souhaite bloquer le ctrl+s et masquer les accès vers les menu : "fichier; edition; affichage..." C'est possible??
Merci
c ok merci