OVH Cloud OVH Cloud

Lancement excel avec un classeur

5 réponses
Avatar
Steph_D
Bonjour,

J'appelle à l'aide.

Je désire, par une ligne de commande comme par exemple C:\Program
Files\Microsoft Office\Office\EXCEL.EXE" c:\Monclasseur.xls /e, lancer un
classeur avec une macro au démarrage, puis que l'application excel se ferme
ensuite dés la fin d'exécution de cette macro.

Est-il possible de passer comme paramètre dans la ligne de dommande, le nom
d'une macro ?
Comment faire pour que ce classeur se ferme automatiquement après
l'exécution de la macro ?

Merci d'avance
Steph

5 réponses

Avatar
Ricky
Bonjour - Bonsoir *Steph_D*

C'est une lapaliçade : terminer la macro par une ligne qui ferme le classeur

--
Ricky [MVP] Visitez les faq...
http://www.faqoe.com http://faqword.free.fr
http://www.excelabo.net
|| Bonjour,
||
|| J'appelle à l'aide.
||
|| Je désire, par une ligne de commande comme par exemple C:Program
|| FilesMicrosoft OfficeOfficeEXCEL.EXE" c:Monclasseur.xls /e,
|| lancer un classeur avec une macro au démarrage, puis que
|| l'application excel se ferme ensuite dés la fin d'exécution de cette
|| macro.
||
|| Est-il possible de passer comme paramètre dans la ligne de dommande,
|| le nom d'une macro ?
|| Comment faire pour que ce classeur se ferme automatiquement après
|| l'exécution de la macro ?
||
|| Merci d'avance
|| Steph
Avatar
Steph_D
"Ricky" a écrit dans le message de
news:
Bonjour - Bonsoir *Steph_D*

C'est une lapaliçade : terminer la macro par une ligne qui ferme le
classeur


Je n'ai pas été assez clair. Je veux simplement effectuer un traitement
transparent sur excel (génération d'un fichier csv) en le lançant par un
fichier bat par exemple, et à la fin de ce traitement, je souhaite que
l'application (et non le classeur uniquement ;o)))) se ferme
automatiquement.

Avatar
jps
Application.Quit

jps

"Steph_D" a écrit dans le message de
news:cp1lg9$kln$
"Ricky" a écrit dans le message de
news:
Bonjour - Bonsoir *Steph_D*

C'est une lapaliçade : terminer la macro par une ligne qui ferme le
classeur


Je n'ai pas été assez clair. Je veux simplement effectuer un traitement
transparent sur excel (génération d'un fichier csv) en le lançant par un
fichier bat par exemple, et à la fin de ce traitement, je souhaite que
l'application (et non le classeur uniquement ;o)))) se ferme
automatiquement.






Avatar
Alain CROS
Bonjour

Le fichier BAT :

Start "CheminCompletXL" /eLaMacroaExecuter "CheminCompletduFichierXLS"

Dans le module ThisWorkbook du fichier XLS :

Private Declare Function GetCommandLine$ Lib "Kernel32" Alias "GetCommandLineA" ()

Private Sub Workbook_Open()
Dim CmdLine$, Pos1&
CmdLine = GetCommandLine 'Lire la ligne de Commande
Pos1 = InStr(1&, CmdLine, ThisWorkbook.FullName, vbTextCompare)
If Pos1 <> 0& Then CmdLine = Mid$(CmdLine, 1&, Pos1 - 1&) Else Exit Sub
If Right$(CmdLine, 1&) = """" Then Pos1 = 2& Else Pos1 = 1&
CmdLine = Mid$(CmdLine, 1&, Len(CmdLine) - Pos1)
CmdLine = Mid$(CmdLine, InStr(1&, CmdLine, " /e", _
vbTextCompare) + 4&, Len(CmdLine))
'CmdLine ne contient plus que les paramétres
Run CmdLine
End Sub'AC

Dans un module standard du fichier XLS :

Sub LaMacroaExecuter()
MsgBox "Bonjour Steph_D. Comment allez vous ?"
Application.Quit
End Sub

Alain CROS

"Steph_D" a écrit dans le message de news: cp1efi$hgg$
Bonjour,

J'appelle à l'aide.

Je désire, par une ligne de commande comme par exemple C:Program
FilesMicrosoft OfficeOfficeEXCEL.EXE" c:Monclasseur.xls /e, lancer un
classeur avec une macro au démarrage, puis que l'application excel se ferme
ensuite dés la fin d'exécution de cette macro.

Est-il possible de passer comme paramètre dans la ligne de dommande, le nom
d'une macro ?
Comment faire pour que ce classeur se ferme automatiquement après
l'exécution de la macro ?

Merci d'avance
Steph




Avatar
Steph_D
Merci Alain et JPS.
Je m'en vais de ce pas tester le graal.