Recuparation du nom du fichier contenant la macro active

Signaler
Messages postés
43
Date d'inscription
dimanche 9 mars 2003
Statut
Membre
Dernière intervention
20 février 2013
-
Messages postés
43
Date d'inscription
dimanche 9 mars 2003
Statut
Membre
Dernière intervention
20 février 2013
-
Bonjour,

Je souhaite récupérer la nom du fichier contenant la macro active sachant que le workbook active n'est pas celui qui contient la macro.

Merci.

3dflix

4 réponses

Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
19
Si je comprends bien la question, tu peux utiliser une variable As Workbook en début de macro et lui refiler le classeur

ex:
Sub MaSub()
Dim ClasseurCourant As Workbook
Set ClasseurCourant = ActiveWorkbook

'ton code qui va dans l'autre classeur

ClasseurCourant.Activate

MPi²
Messages postés
43
Date d'inscription
dimanche 9 mars 2003
Statut
Membre
Dernière intervention
20 février 2013

Je me suis peut etre mal exprimé. Je reformule.

J'ai 2 workbook: workbook1 est actif, il contient des données. workbook2 n'est pas actif et contient la macro.
La macro de workbook2 contient un userform avec un bouton. Ce bouton doit me donner le nom du workbook2 (workbook.name).

Si j'utilise application.activeworkbook.name , ce n'est pas bon car je récupère "workbook1" car il est actif est doit le rester.
Moi je veux récupérer le workbook dans lequel est enregistrer la macro soit "Workbook2". A partir de la macro active, je veux remonter au parent jusqu'à arriver sur le Workbook de tete.

Autrement dit une fonction qui me dit à quel WorkBook appartient la macro en cour.

merci

3dflix
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
19
Autrement dit une fonction qui me dit à quel WorkBook appartient la macro en cour.



C'est cette partie qui m'intrigue... Comment se fait-il que tu sois dans Workbook1 si la macro est démarrée à partir de l'autre (?)
Si la macro est démarrée à partir du WB2, ma méthode tient le coup, non ?

Autrement, si tu as 10 classeur ouverts, comment savoir lequel a ouvert WB1 ? ou lequel est en relation avec WB1 ?
Est-ce qu'il y a des possibilités de vérification que tu connais, étant l'auteur ?

MPi²
Messages postés
43
Date d'inscription
dimanche 9 mars 2003
Statut
Membre
Dernière intervention
20 février 2013

Probleme contourné.

En faite je lançait la macro depuis l'éditeur vb donc
   la macro du classeur1 démarait alos que le classeur 2 était actif.

Du coup je fais attention a activer classeur 1 avant de la lancer.

merci quand meme.

3dflix