Lancer une macro d'un autre fichier excel

  • Initiateur de la discussion Initiateur de la discussion sat478
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

sat478

Guest
Bonjour, à partir d'un fichier excel principal, je souhaiterais lancer une Sub qui se trouve dans un autre fichier excel. En fait, la sub du fichier excel principal permettrait de lancer le second fichier excel, d'activer la sub Workbook_open et ensuite de lancer la Sub TestFichierSecond() et une fois cette sub terminée de fermer le fichier excel secondaire pour revenir à mon fichier excel principal.

Mais est il possible de le faire ? Et si oui comment ?
 
Re : Lancer une macro d'un autre fichier excel

Bonsoir sat478,

Soit 2 classeurs :
  1. Le classeur principal (ouvert) contenant la procédure LancerMacroClasseur2() ci-dessous.
  2. Le classeur "Classeur2.xls" (fermé) et contenant :
    • Une procédure Workbook_Open() dans le module de code de l'objet ThisWorkbook.
    • Une procédure TestFichierSecond() dans un module de code standard.
En lançant le code suivant (dans le classeur principal), tu devrais obtenir l'effet souhaité :
Code:
[SIZE=2][COLOR=blue]Sub[/COLOR] LancerMacroClasseur2()
      Workbooks.[COLOR=blue]Open[/COLOR] Filename:="C:\Classeur2.xls"
      Application.Run "Classeur2.xls!TestFichierSecond"
      ActiveWorkbook.[COLOR=blue]Close False
End Sub[/COLOR][/SIZE]
Cordialement,
 
Re : Lancer une macro d'un autre fichier excel

Salut sat478
Bonsoir Didier

sat478 question de curiosité Lol que veux tu faire par le biais de ces procèdures(Workbook_Open() et TestFichierSecond()) du Classeur2.xls

merci d'avance lol
bonne nuit 😱
 
Re : Lancer une macro d'un autre fichier excel

Bonjour,
je reprends ce vieux sujet ....
J'arrive bien à lancer une macro d'un fichier excel à partir d'un autre fichier excel. J'aimerais savoir s'il est possible de lancer cette macro avec des variables en paramètres ? (soit lancer une fonction plutôt qu'un sub).

Merci !
 
Re : Lancer une macro d'un autre fichier excel

En fait j'avais pas eu le temps de tester...
Je m'aperçois que le tableau que je passe en paramètre n'est pas rempli après l'exécution de la fonction... Il est bien rempli dans la fonction et à la fin, mais quand on revient dans la macro principal, il est vide.
Est-ce normal ?
 
Re : Lancer une macro d'un autre fichier excel

merci ! .. mais en fait il s'agit d'un tableau VBA.
J'écris la ligne suivante :

Application.Run "Classeur2.xls!remplir_tableau", tableau

sub remplir_tableau(tableau() as blabla)
' remplissage du tableau
end sub

quand je reviens dans la macro principale, tableau() est vide.
 
Re : Lancer une macro d'un autre fichier excel

Bonjour le fil, le forum

Application.run "'" & fic & "'!Module2.Macro2" fonctionne parfaitement chez moi, il a fallu rajouter la quote entre guillemets, mais no problemo,

par contre avec des paramètres ça ne fonctionne pas :

Application.run "'" (& fic & "'!Module2.Mine, duree, UneDate, 2, 1, colonn") je ne sais pas où mettre ma première parenthèse, si il faut rajouter un &, j'ai tout essayé, du moins je crois, mais ça plante toujours.

Merci à vous si vous avez une soluce...

Bises

C@thy
 
Re : Lancer une macro d'un autre fichier excel

Arf! J'ai trouvé, Pierrot :

inutile = Application.run("'" & fic & "'!Module2.mine", duree, UneDate, 2, 1, Column)

pfiou!!!

sans le inutile = ça ne marche pas.

Merci beaucoup Pierrot, pour ton aide... une heure que je suis là-dessus!!!🙄

Bises

C@thy
 
Dernière édition:
Re : Lancer une macro d'un autre fichier excel

Bonjour le forum,

Je ne comprends pas bien ce que « inutile » représente dans la discussion. Et j n’arrive pas à imiter votre code.
Dans ma situation, un libraire ajoute (manuellement) régulièrement des titres sur le fichier proposition, des lecteurs choisissent via le bouton choisir que leur soit expédié ou non les ouvrages. Le résultat de leur choix est enregistré sur la feuille par l’inscription de la date

Ce que je souhaite c’est que lorsque un lecteur accepte un titre proposé sur le fichier « proposition », le fichier « distrib » soit mis à jour par déclenchement de la procédure AjouterUnTitre de ce même fichier. Bien sur, il faudrait que je vérifie au préalable que le titre n’y figure pas déjà, mais ça, je sais le faire.

Merci de ce que vous pourrez faire
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
1
Affichages
171
Réponses
8
Affichages
315
Réponses
3
Affichages
206
Retour