"Enregistrer sous" dans Excel par VBA

Résolu
cs_Ma2004 Messages postés 150 Date d'inscription mardi 20 juillet 2004 Statut Membre Dernière intervention 22 octobre 2008 - 11 avril 2005 à 09:47
cs_nico39 Messages postés 56 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 4 octobre 2006 - 11 avril 2005 à 11:08
Bonjour,

J'ai un petit bout de code par lequel j'enregistre des fichiers Excel. J'aimerais savoir comment faire pour changer le nom automatiquement quand le fichier existe déjà.
Exemple:
J'enregistre 4 fichiers différents: "toto.xls", "titi.xls", "tata.xls" et "toto.xls". Evidemment pour le second fichier "toto.xls", une fenêtre va me demander si je veux écraser le fichier du même nom ou pas. En fait, ce que je voudrais, c'est qu'il s'enregistre sous le nom "toto_2.xls" par exemple (soit sans même ouvrir le fenêtre, soit lorsque je réponds "non" à "voulez vous écraser le fichier existant", ça m'est égal).

Quelqu'un sait il comment faire ?

D'avance merci pour votre aide.


==============================================================
Si cette réponse convient à ton problème, n'oublies pas de l'accepter

1 réponse

cs_nico39 Messages postés 56 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 4 octobre 2006
11 avril 2005 à 11:08
Salut Ma2004,

avant ta procédure d'enregistrement , fais un petit test d'existence sur ton fichier:

If dir("C:\....\mon_fichier.xls") <> "" Then
(le fichier existe)
Workbooks(ancien_nom_du_fichier).SaveAs _ filename:=ancien_nom_du_fichier & "bis" (changement de nom du fichier)
ActiveWorkbooks.Close
Else : (le fichier n'existe pas encore)
Workbooks(nom_du_fichier).Save
ActiveWorkbooks.Close
End if

Pour le changement de nom, je n'ai pas été très imaginatif, mais il est tout à fait possible de créer une petite procédure qui te permette de changer le nom (ou du moins le muméro dans le nom de fichier), si celui-ci est déjà utilisé.

J'espère avoir répondu à ta question.


Amateurement vôtre...
3
Rejoignez-nous