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
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.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 @ECHO OFF "C:\MyFolder\myTools\pdfdetach.exe" -saveall monfichier.pdf
J'ai essayé de lancer ce fichier .bat depuis VBA à l'aide de ce code :
Mais je n'ai rien en retour, les fichiers ne se détachent pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 FunctionSubmitBatch() Dim Command As String Command = "C:\MyFolder\myTools\pdfdetach.bat" Shell Command, vbNormalFocus End Function
Du coup j'ai voulu lancer la command batch directement dans un terminal Shell via VBA à l'aide de ce code :
Ce code ne change rien à première vue car aucun fichier n'est extrait du pdf.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Je suis sous Windows 10 et j'utilise Excel 2013
Merci d'avance pour votre aide.
Partager