Bonjour, je suis arrivé a faire une fonction vba pour imprimer un pdf, j'ai besoin maintenant de 3 choses :
-imprimer en recto/verso
-selectionner les pages a imprimer
-Pouvoir imprimer en A4/A3

Je ne sais pas du tout comment faire, j'ai cherché sur le forum mais j'ai rien trouvé de fonctionnel. Les sendkeys n'ont pas l'ai de fonctionner.
j'ai parametré les senkeys pour faire comme l'utilisateur devrait faire sur la fenêtre d'impression mais la fenêtre n'a même pas l'air de s'ouvrir. Le pdf s'ouvre et se referme sans imprimer.

Je vous mets le script :

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
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
 
 
Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
 
Function imprTst(sPages As String, sFichier As String)
Dim sAcro As String
Dim Clip As MSForms.DataObject
 
 
   sAcro = "C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe"
    ShellExecute 0, vbNullString, sFichier, vbNullString, vbNullString, vbNormalFocus
    Application.Wait (Now + TimeValue("00:00:03"))
   SendKeys "^p", True
    SendKeys "%g", True
    SendKeys "{TAB}", True
    SendKeys sPages, True
    SendKeys "{TAB}", True
    SendKeys "{TAB}", True
    SendKeys "{TAB}", True
    SendKeys "{TAB}", True
    SendKeys "v", True
    SendKeys "{ENTER}", True
 
 
    KillAcrobatReader
    Set Clip = Nothing
End Function
 
Private Sub KillAcrobatReader()
    Shell "Taskkill /im AcroRd32.exe /f", 0
End Sub
Voila, si quelqu'un a une piste pour le faire je suis preneur.

Merci