J'ai cherché sur beaucoup de site comment ouvrir excel et lancer une macro à son ouverture grace à .bat.
Ouverture du fichier Excel
start excel.exe "C:\test.xlsm"
Ouverture du fichier Excel + Lancement de la requete
j'ai trouvé ca sur Internet mais ca ne marche pas..
start excel.exe "C:\test.xlsm" /x "Macro1"
mais elle me dit Macro1.xlsx introuvable vérifiez l'orthographe etc
J'ai du faire quelque chose qu'il ne fallait pas...
J'ai reussi à contourner en activant ma macro1 à l'ouverture du fichier excel. Mais je suis vraiment interessé pour savoir comment l'activer via un fichier .Bat.
Je pensais que c'était possible de lancer une macro excel sans passer par workbook open()..
degap05 la différence avec le batch c'est que tu peux planifier l'ouverture de ton fichier via le planificateur de tache windows
Toutes les heures, ts les jours.
Le batch récupère les fichiers(ordi allumé ou en veille) que tu dois ouvrir, les fichiers s'ouvrent , les macros se lancent(workbookopen) et toi tu n'es plus la à cliquer sur les boutons et rester devant ton ordi.
Certes, il est possible de lancer des macros à des heures données via vba je suppose mais c'est au dela de mes compétences..
Re,
en fait lorsque tu ouvre ton fichier normalement il' n'ouvre pas ta macro automatiquement as tu essayé
Par contre si tu passe par le bat ta macro est lancé donc tu ne passe pas directement ta macro par le workbook_open.
Fais le test pour voir si c'est ça que tu demandé.
Ceci répond également à la question de degap05.
A bientôt.
@ fhoest: même problème, portant je suis sur 2007. En Mettant START en début de ligne, le fichier s'ouvre mais n'applique pas la macro; et sans START la commande n'est pas reconnue.
Bonjour,
@ degap05 ,es ce que tu as bien un espace derrière /cmd
Code:
monparam = Split(macmdline, "/cmd ")
.
utilise tu le même fichier que j'ai déposé ou as tu fait un copier coller du code??
@ lone-wolf ,je suis également sur office 2007 et je n'ai aucun problème regarde si sur la ligne cité ci dessus tu as bien l'espace après /cmd.
Mettez vos fichiers pour moi regarder svp...
A+
j'utilise ton fichier joint avec le bat dans le même dossier, il y a bien un espace; j'ai procédé à diverses modifications du bat et, toujours impossible de faire exécuter la macro.
Mon CMD me dit que "C:\Program Files\Microsoft Office\Office11\EXCEL.EXE" n'est pas un commande interne ou externe reconnue.
En mettant START même problème avec /cmd/macro1.
Est-ce qu'il y aurait une DLL qui manquerait chez moi??? Je suis sous Seven Edition Familiale Premium.
Bonjour,
Non je ne pense pas mais je pense que le chemin n'est pas bon pour office 2007 chez moi j'ai office 12 et non office 11 as toi de trouver le bon chemin ou se trouve ton EXCEL.EXE
ensuite cela devrait fonctionner.
A+
pour l'ouverture du fichier plus de problèmes maintenant; c'était bien le chemin d'Excel qu'il fallait corriger.
Maintenant, malgré l'éspace après "/cmd ", il y à l'erreur: l'indice n'appartient pas à la sélection sur cette ligne:
Application.Run Mid(monparam(1), 2, Len(monparam(1)) - 3)