Bonjour à tous,
Voici mon problème. En XL-2003, je propose une mise à jour auto (via réseau) d'une macro complémentaire.
Pour se faire, le principe est de faire un "enregistrer sous" vers un autre nom de la macro courante, puis de copier la nouvelle version dans le dossier addin du poste en local (pour remplacer la version courante)
Pour se faire, voici le code (qui fonctionne très bien en XL-2003) :
Le problème en XL-2007, c'est qu'à l'execution du saveas, la macro courante ne change pas de nom et du coup, l'instruction FileCopy génère une erreur (70) puisque le fichier est utilisé par Excel....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Kill "ma_macro(old).xlam" ThisWorkbook.SaveAs "ma_macro(old).xlam", FileFormat:=xlOpenXMLAddIn ' <-- la macro courante change de nom en XL-2003 FileCopy NetworkPath & "ma_macro.xlam", Macro.FullName
Comment puis je contourner ce problème ?
Merci par avance.
Partager