Lancer une macro excel dans un fichier bat

Bonjour,

Je cherche à lancer une macro excel à partir d’un fichier bat, quelque chose du genre (dans mon fichier .bat) :

excel.exe “monfichier.xls” /“ma_macroexcel”

Mais je ne connais pas la syntaxe. A ce jour “monfichier.xls” s’ouvre bien, mais c’est tout, la macro ne s’éxécute pas. A signaler que la macro est externe au classeur “monfichier.xls”.

Si quelqu’un peut m’aider …
Merci

Qu’est-ce que tu veux dire par macro externe ?
Macro dans un fichier xlm ? , dans un fichier xla ?

Je ne pense pas qu’il y ait de commutateur pour lancer une macro à l’ouverture d’un classeur.
Je pense qu’il va falloir que tu passe par une macro workbook_open() dans ton fichier excel, qui viendra lire la ligne de commande et lancer ensuite son contenu.

Bonjour Gcc,

En fait, par macro externe j’entends une macro enregistrée dans un classeur autre que mon “monfichiers.xls” dans l’exemple ci-dessus. Pour être précis voici l’exemple réel. J’ai un fichier …\Mes documents\MQ0071.xls et une macro MePage dans un autre classeur …\MacroExcel\MQ0000.xls. Dans Excel Outils/Options/Général, dans la partie Au démarrage, ouvrir tous les fichiers du dossier, j’ai indiqué le dossier …\MacroExcel\ en masqué, et effectivement à chaque ouverture d’Excel, j’ai bien les macros du classeur MQ0000.xls à disposition. La seule chose qui me manque c’est la syntaxe pour éxécuter une des macros (choisie dans mon fichier bat) au lancement du classeur MQ0071…

Dans ton classeur MQ0071.xls, tu vas dans le VBA, et tu douclecliques ThisWorkbook (celui qui correspond au projet MQ0071.xls)
tu crées la fonction workbook_Open() et tu lui dis d’appeler la macro qui t’intéresse

Oui mais mon fichier MQ0071.xls est écrasé et regénéré à la demande (il est issu d’une requête AS400).

Là tu n’as pas trop de solution …
A par peut être ne pas mettre le fichier macro en masqué, et au lieu de lancer MQ0071.xls lancer
excel /e/MQ0071.xls MQ0000.xls
avec en ouverture de MQ0000.xls une macro qui te permettra de récupérer ton argument et d’ouvrir le classeur en question

Bon ben tant pis pour moi, c’est bien dommage car dans le même ordre d’idée, j’arrive bien à lancer une macro Word à partir d’un fichier bat. Je vais revoir mes ambitions à la baisse pour Excel. Merci de ton aide Gcc.
Bonne soirée.