lancer un executable depuis une macro
Bonjour,
Je sèche, du coup je viens vous demander un coup de main.
Pour vous expliquer très rapidement mon contexte, je reçois des pdf dans lesquels il y a des fichiers attachés.
J'ai trouvé un exécutable qui fonctionne très bien que vous pouvez trouver ici : pdfdetach.exe
Alors depuis le début j'utilise un fichier .bat pour lancer à la main la commande suivante :
fichier pdfdetach.bat
Code:
1 2 3
|
@ECHO OFF
"C:\MyFolder\myTools\pdfdetach.exe" -saveall monfichier.pdf |
Lorsque je lance le bat il fonctionne très bien. Je tiens à signaler que le pdf contenant les fichiers attachés et le fichier bat sont dans le même répertoire de travail.
J'ai essayé de lancer ce fichier .bat depuis VBA à l'aide de ce code :
Code:
1 2 3 4 5 6
| FunctionSubmitBatch()
Dim Command As String
Command = "C:\MyFolder\myTools\pdfdetach.bat"
Shell Command, vbNormalFocus
End Function |
Mais je n'ai rien en retour, les fichiers ne se détachent pas :calim2:
Du coup j'ai voulu lancer la command batch directement dans un terminal Shell via VBA à l'aide de ce code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
FunctionSubmitBatch()
Dim Path As String
Dim Command As String
Dim Opt As String
Dim exe As String
Dim FileName As String
Path = "C:\MyFolder\Exo\detach\"
exe = "pdfdetach.exe"
Opt = "-saveall"
FileName = Path & "monfichier.pdf"
Command = Path & exe & " " & Opt & " " & FileName
Shell Command, vbNormalFocus
End Function |
Ce code ne change rien à première vue car aucun fichier n'est extrait du pdf.
Je suis sous Windows 10 et j'utilise Excel 2013
Merci d'avance pour votre aide.