Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Nom de fichier variable dans une macro d'impression

2 réponses
Avatar
jean michel
bonjour à tous ceux qui ne sont pas déjà partis en vacances !

J'ai créé une macro pour imprimer des données chiffrées et graphiques dans
un classeur excel.

Cette macro, en grande partie réalisée avec l'assistant qui va bien, fait
référence à un fichier (nom.xls).

Ce fichier est un original vierge devant servir à être renseigné, puis
sauvegardé sous un autre nom, afin de pouvoir conserver l'original vierge
intact pour une future utilisation.

De ce fait, le "nom.xls" devient "nouveauxnom.xls". Ce qui perturbe au plus
haut point ma macro et la rend inopérante. J'ai donc droit au classique
"alerte au bug".

Comment puis-je contourner cet écueil ?
Puis-je "variabiliser" mon nom de fichier ? et si oui, comment ?

Cordialement
jean michel
--
cordialement
jean michel

2 réponses

Avatar
Jacky
Bonsoir,

Si j'ai bien compris ceci pourrait fonctionner
'------------
nom = ActiveWorkbook.Name
nouveaunom = "icilenouveaunom.xls"
MsgBox "Nom actuel du fichier : " & nom & Chr$(10) & "Nom de la sauvegarde :
" & nouveaunom
ActiveWorkbook.SaveCopyAs "d:" & nouveaunom
'--------------
Salutations
JJ

"jean michel" a écrit dans le message
de news:
bonjour à tous ceux qui ne sont pas déjà partis en vacances !

J'ai créé une macro pour imprimer des données chiffrées et graphiques dans
un classeur excel.

Cette macro, en grande partie réalisée avec l'assistant qui va bien, fait
référence à un fichier (nom.xls).

Ce fichier est un original vierge devant servir à être renseigné, puis
sauvegardé sous un autre nom, afin de pouvoir conserver l'original vierge
intact pour une future utilisation.

De ce fait, le "nom.xls" devient "nouveauxnom.xls". Ce qui perturbe au
plus

haut point ma macro et la rend inopérante. J'ai donc droit au classique
"alerte au bug".

Comment puis-je contourner cet écueil ?
Puis-je "variabiliser" mon nom de fichier ? et si oui, comment ?

Cordialement
jean michel
--
cordialement
jean michel


Avatar
jean michel
Bonsoir et merci de vous pencher sur mon petit problème.

je ne cherche pas (a priori, peut être y serai-je contraint) à créer une
variable définie dans ma macro, mais à faire en sorte que lorsque le nom du
fichier change (et ce sera systématique) cette macro fasse bien référence au
nouveau nom de fichier défini.

je m'explique autrement pour que ce soit bien clair.
le programme est une analyse financière destinée à étudier la rentabilité
d'une entreprise. Il va de soi que chaque nouvelle entreprise analysée devra
pouvoir être repérée, ce qui sera fait par un nom de fichier différent.
Exemple, chargement de analyse finacière, rentrée des données pour
l'entreprise TOTO, sauvegarde sous le nom TOTO.XLS. Puis chargement de
analyse finacière, rentrée des données pour l'entreprise MACHIN, sauvegarde
sous le nom MACHIN.XLS.

l'élément de macro considéré est le suivant :
ActiveWindow.Visible = False
Windows("Test.xls").Activate
ActiveSheet.ChartObjects("Graphique 16").Activate
ActiveChart.ChartArea.Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Preview:úlse,
Collate:= _
True

Ici le fichier s'appèle Test.xls, dans sa version finale il s'appellera
Analyse Financière.xls et dans son utilisation il sera nommé TOTO.XLS ou
MACHIN.XLS.

Bref, comment faire pour que : Windows("Test.xls").Activate comprenne que je
veux, suivant les cas faire appel à TOTO ou Machin ?

je vais essayer votre idée de variable nom¬tiveWorkbook.Name, en espérant
que c'est ce qu'il me faut, parce que mon niveau global en macro est assez
léger.
--
cordialement
jean michel



Bonsoir,

Si j'ai bien compris ceci pourrait fonctionner
'------------
nom = ActiveWorkbook.Name
nouveaunom = "icilenouveaunom.xls"
MsgBox "Nom actuel du fichier : " & nom & Chr$(10) & "Nom de la sauvegarde :
" & nouveaunom
ActiveWorkbook.SaveCopyAs "d:" & nouveaunom
'--------------
Salutations
JJ

"jean michel" a écrit dans le message
de news:
bonjour à tous ceux qui ne sont pas déjà partis en vacances !

J'ai créé une macro pour imprimer des données chiffrées et graphiques dans
un classeur excel.

Cette macro, en grande partie réalisée avec l'assistant qui va bien, fait
référence à un fichier (nom.xls).

Ce fichier est un original vierge devant servir à être renseigné, puis
sauvegardé sous un autre nom, afin de pouvoir conserver l'original vierge
intact pour une future utilisation.

De ce fait, le "nom.xls" devient "nouveauxnom.xls". Ce qui perturbe au
plus

haut point ma macro et la rend inopérante. J'ai donc droit au classique
"alerte au bug".

Comment puis-je contourner cet écueil ?
Puis-je "variabiliser" mon nom de fichier ? et si oui, comment ?

Cordialement
jean michel
--
cordialement
jean michel