Super !!!!
Moyennant de micro-adaptations, ça fonctionne parfaitement (notamment pq je suis un archaïque utilisateur d'Office 2003).
Private Sub Workbook_BeforeClose(Cancel As Boolean)
wk = ActiveWorkbook.Name
LeNom = Left(wk, Len(wk) - 4) & " (copie de sauvegarde)" & ".xls"
ActiveWorkbook.SaveCopyAs "C:\Users\MOI\Desktop\SAUVEGARDE\" & LeNom
End Sub
Merci !!!
L'appétit vient en mangeant, j'ai donc 2 requêtes supplémentaires si tu n'es pas lassée :
1/ si je veux insérer ce code dans plusieurs fichiers, je vais devoir adapter le code au nombre de caractères du nom du fichier.
Or il peut arriver que je rajoute un suffixe (par exemple un numéro de version) au nom du fichier.
Y a-t-il un moyen d'adapter le code pour que la macro fonctionne quelle que soit la longueur du nom de fichier ?
2/ j'aimerais généraliser ce code à un grand nombre de fichiers. Je compte créer un sous-dossier nommé "SAUVEGARDE" dans chaque dossier. Comment faire pour que la sauvegarde soit placée dans le sous-dossier "SAUVEGARDE" du dossier qui contient le fichier Excel, quel que soit le chemin complet ?
Re-merci.