OVH Cloud OVH Cloud

Xla et ligne de commande

1 réponse
Avatar
Sophie
Bonjour,

Je travaille en vba sur un fichier .xla d'excel. J'aurais souhaité avoir
des infos sur ce format, ce que je ne trouve pas sur le net, et savoir
s'il y a possibilité de le lancer en ligne de commande.

ex : depuis une fenetre dos, taper fichier.xla -ScanPc
ou ScanPc est une macro.

Cordialement,
--
Pascal

1 réponse

Avatar
Alain CROS
Bonjour.

Dans la fenêtre DOS entrer la commande suivante.

start excel /e/ScanPc "CheminCompletduFichierXLA"

Dans le module ThisWorkbook du fichier XLA :

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

Dans un module standard du fichier XLA :

Sub ScanPc()
MsgBox "Bonjour Sophie, comment allez vous ?"
End Sub

Alain CROS

"Sophie" a écrit dans le message de news: 411a479e$0$31097$
Bonjour,

Je travaille en vba sur un fichier .xla d'excel. J'aurais souhaité avoir
des infos sur ce format, ce que je ne trouve pas sur le net, et savoir
s'il y a possibilité de le lancer en ligne de commande.

ex : depuis une fenetre dos, taper fichier.xla -ScanPc
ou ScanPc est une macro.

Cordialement,
--
Pascal