Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

renommage fichier à la fermeture

  • Initiateur de la discussion steeve
  • Date de début
S

steeve

Guest
re-bonsoir,

Je voudrai effectuer l'action suivante sur mon fichier excel:

lors de la fermture du fichier (clic sur la croix ou fichier quitter), je voudrai le sauvegarder sous le nom d'une cellule spécifier dans ma première feuille. De plus je voudrai qu'il s'enregistre sous le répertoire courant.

J'ai utiliser ceci mais qui n'a pas l'air de fonctionner:

dans le ThisWorkbook, j'ai placé cette fonction:
Private Sub Workbook_BeforeClose(Cancel As Boolean)

ActiveWorkbook.SaveAs Filename:= Range('B5').Value
End Sub
(il me manque à indiquer le répertoire courant...)

D'autre part, si j'ouvre et je ferme mon fichier plusieurs fois, il va me dire 'un fichier sous le nom de... existe déjà voulez-vous le remplacer' si je mets non, il m'ouvre le debugger.

Est-ce que quelqu'un a déjà eu ce pb, ou alors pourrait me donner le code adéquat pour faire cela.

Merci par avance pour vos réponses.
 

Charly2

Nous a quittés en 2006
Repose en paix
Bonsoir Steeve, bonsoir à toutes et à tous

Je ne sais pas ce que tu veux dire par répertoire courant... Alors dans le doute, je te propose 2 instructions (variable Chemin à déclarer en String) :

1) Sélectionner le répertoire du classeur :

Chemin = ThisWorkbook.Path & '\\\\\\\\'

2) Sélectionner le répertoire courant :

Chemin = CurDir & '\\\\\\\\'

Puis, pour sauvegarder ton fichier en premier, puis sous un autre nom :

Application.DisplayAlerts = False
ThisWorkbook.Save
ThisWorkbook.SaveAs FileName = Chemin & Range('B5').Value
Application.DisplayAlerts = True

En espérant que cela réponde à ta demande.

A+
 
S

steeve

Guest
Bonjour Charly2, Bonjour à tous

Pour préciser ma demande: il s'agit du répertoire / dossier dans lequel se trouve le fichier.
J'ai tester ton code: le fichier s'enregistre sous le nom 'false' et dans 'mes documents'...
est-ce normal ? si ce ne pas le cas que faut-il changer ?

Merci
 

Charly2

Nous a quittés en 2006
Repose en paix
Bonjour Steeve, bonjour à toutes et à tous

Curieux ! As-tu bien un nom de fichier dans la cellule B5 de ta feuille active ?

Voici le code complet - il faut que ton fichier ait déjà été sauvegardé au moins 1 fois, i.e. que ce ne soit pas un nouveau classeur :


Je viens de tester avec SteeveTest.xls en B5 et je n'ai aucun souci. Le fichier principal est sauvegardé avec les modifications et un fichier est créé dans le même répertoire avec SteeveTest.xls pour nom.

Tiens-nous au courant.

A+
 

Discussions similaires

Réponses
2
Affichages
330
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…