Imprimer les PDF d'un dossier depuis Excel
Résolu/Fermé
cyrga11
Messages postés
48
Date d'inscription
mardi 18 mars 2014
Statut
Membre
Dernière intervention
28 novembre 2014
-
17 nov. 2014 à 23:31
cyrga11 Messages postés 48 Date d'inscription mardi 18 mars 2014 Statut Membre Dernière intervention 28 novembre 2014 - 19 nov. 2014 à 16:40
cyrga11 Messages postés 48 Date d'inscription mardi 18 mars 2014 Statut Membre Dernière intervention 28 novembre 2014 - 19 nov. 2014 à 16:40
A voir également:
- Imprimer les PDF d'un dossier depuis Excel
- Lire le coran en français pdf - Télécharger - Histoire & Religion
- Liste déroulante excel - Guide
- Comment signer un pdf sans l'imprimer - Guide
- Mettre un mot de passe sur un dossier - Guide
- Comment modifier un pdf - Guide
36 réponses
f894009
Messages postés
17185
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
15 avril 2024
1 701
18 nov. 2014 à 09:02
18 nov. 2014 à 09:02
Bonjour,
ce code marche tres bien, ai ajoute boucle sur les fichiers PDF du dossier
ce code marche tres bien, ai ajoute boucle sur les fichiers PDF du dossier
Option Explicit
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private 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
Sub ImprimerFichier()
Dim x As Long, Chemin_Fichier As String, Nom_Fichier As String
Chemin_Fichier = "D:\Session_Cyril\Mes documents\"
x = FindWindow("XLMAIN", Application.Caption)
Nom_Fichier = Dir(Chemin_Fichier & "*.PDF")
'boucle nom de fichier PDF
Do While Nom_Fichier <> ""
ShellExecute x, "print", Chemin_Fichier & Nom_Fichier, "", "", 1
Nom_Fichier = Dir
Loop
End Sub
cyrga11
Messages postés
48
Date d'inscription
mardi 18 mars 2014
Statut
Membre
Dernière intervention
28 novembre 2014
18 nov. 2014 à 10:38
18 nov. 2014 à 10:38
Bonjour f894009 et merci pour ta réponse.
Alors effectivement, en mettant le code que tu ma donné, cela fonctionne. En revanche, cela m'ouvre aussi Adobe Rearder.
Est il possible que les fichiers aille à l'imprimante (cela fonctionne merci à toi) sans s'ouvrir ?
Alors effectivement, en mettant le code que tu ma donné, cela fonctionne. En revanche, cela m'ouvre aussi Adobe Rearder.
Est il possible que les fichiers aille à l'imprimante (cela fonctionne merci à toi) sans s'ouvrir ?
f894009
Messages postés
17185
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
15 avril 2024
1 701
18 nov. 2014 à 11:41
18 nov. 2014 à 11:41
Re,
En revanche, cela m'ouvre aussi Adobe Rearder. Surprenant car pas chez moi !!!!!!!!! Vous n'auriez pas pdfcreator en imprimante ???????
En revanche, cela m'ouvre aussi Adobe Rearder. Surprenant car pas chez moi !!!!!!!!! Vous n'auriez pas pdfcreator en imprimante ???????
cyrga11
Messages postés
48
Date d'inscription
mardi 18 mars 2014
Statut
Membre
Dernière intervention
28 novembre 2014
18 nov. 2014 à 11:46
18 nov. 2014 à 11:46
Non je n'ai même pas PDF CREATOR du tout.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
cyrga11
Messages postés
48
Date d'inscription
mardi 18 mars 2014
Statut
Membre
Dernière intervention
28 novembre 2014
18 nov. 2014 à 11:51
18 nov. 2014 à 11:51
J'ai :
Adobe Rearder IX
Adobe Shockwave Player 12.0
Adobe Flash Player 11 Plugin
Adobe Air
Adobe Flash Player 10 ActiveX
Acrobat.com
Si'il y a quelque chose de là que je doit virer je le fait. Mais je ne sais pas quoi
Adobe Rearder IX
Adobe Shockwave Player 12.0
Adobe Flash Player 11 Plugin
Adobe Air
Adobe Flash Player 10 ActiveX
Acrobat.com
Si'il y a quelque chose de là que je doit virer je le fait. Mais je ne sais pas quoi
f894009
Messages postés
17185
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
15 avril 2024
1 701
18 nov. 2014 à 11:53
18 nov. 2014 à 11:53
Re,
Rectification, ca ouvre bien Adobe Reader. Je regarde.
A+
Rectification, ca ouvre bien Adobe Reader. Je regarde.
A+
cyrga11
Messages postés
48
Date d'inscription
mardi 18 mars 2014
Statut
Membre
Dernière intervention
28 novembre 2014
18 nov. 2014 à 12:01
18 nov. 2014 à 12:01
Merci à toi a+
f894009
Messages postés
17185
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
15 avril 2024
1 701
18 nov. 2014 à 12:11
18 nov. 2014 à 12:11
Re,
D'apres les docs de:
https://access.developpez.com/faq/?page=Divers#Print_doc
ca devrait pas ouvrir Adobe mais ca le fait quand meme !!!!!!!
je continue
D'apres les docs de:
https://access.developpez.com/faq/?page=Divers#Print_doc
ca devrait pas ouvrir Adobe mais ca le fait quand meme !!!!!!!
je continue
f894009
Messages postés
17185
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
15 avril 2024
1 701
18 nov. 2014 à 15:50
18 nov. 2014 à 15:50
Re,
A titre d'info, si vous imprimez un .docx, Word s'ouvre mais se referme tout seul.
A titre d'info, si vous imprimez un .docx, Word s'ouvre mais se referme tout seul.
cyrga11
Messages postés
48
Date d'inscription
mardi 18 mars 2014
Statut
Membre
Dernière intervention
28 novembre 2014
18 nov. 2014 à 16:11
18 nov. 2014 à 16:11
Re, effectivement, là le fichier s'ouvre et se ferme tout seul. Cela ne pourrait t'il pas venir de ce qui permet d'ouvrir les PDF sur le PC ?
f894009
Messages postés
17185
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
15 avril 2024
1 701
18 nov. 2014 à 16:14
18 nov. 2014 à 16:14
Re,
ce qui permet d'ouvrir les PDF sur le PC Oui, mais adobe est oblige de s'ouvrir pour imprimer le fichier
ce qui permet d'ouvrir les PDF sur le PC Oui, mais adobe est oblige de s'ouvrir pour imprimer le fichier
cyrga11
Messages postés
48
Date d'inscription
mardi 18 mars 2014
Statut
Membre
Dernière intervention
28 novembre 2014
18 nov. 2014 à 16:59
18 nov. 2014 à 16:59
Donc il ne pourras se fermer automatiquement comme word ?
Parce que à la limite je m'en fiche qu'il s'ouvre s'il se ferme seul. Ne peux ton pas programmer qu'il se ferme tout seul alors ?
Parce que à la limite je m'en fiche qu'il s'ouvre s'il se ferme seul. Ne peux ton pas programmer qu'il se ferme tout seul alors ?
f894009
Messages postés
17185
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
15 avril 2024
1 701
18 nov. 2014 à 17:01
18 nov. 2014 à 17:01
Re,
C'est ce que je cherche, qu'il se ferme tout seul. Ai trouve quelques codes, mais pas marche.
Je continue
C'est ce que je cherche, qu'il se ferme tout seul. Ai trouve quelques codes, mais pas marche.
Je continue
cyrga11
Messages postés
48
Date d'inscription
mardi 18 mars 2014
Statut
Membre
Dernière intervention
28 novembre 2014
18 nov. 2014 à 17:02
18 nov. 2014 à 17:02
merci je cherche aussi de mon coter si je trouve avant je te préviens :)
cyrga11
Messages postés
48
Date d'inscription
mardi 18 mars 2014
Statut
Membre
Dernière intervention
28 novembre 2014
18 nov. 2014 à 17:12
18 nov. 2014 à 17:12
J'ai trouver ce bout de code, mais impossible de le faire fonctionner avec le reste
Sub Ferme_Pdf()
Const WM_SYSCOMMAND& = &H112, SC_CLOSE& = &HF060
SendMessage Apphwnd, WM_SYSCOMMAND, SC_CLOSE, 0&
End Sub
Sub Ferme_Pdf()
Const WM_SYSCOMMAND& = &H112, SC_CLOSE& = &HF060
SendMessage Apphwnd, WM_SYSCOMMAND, SC_CLOSE, 0&
End Sub
cyrga11
Messages postés
48
Date d'inscription
mardi 18 mars 2014
Statut
Membre
Dernière intervention
28 novembre 2014
18 nov. 2014 à 18:04
18 nov. 2014 à 18:04
alors j'ai trouver ce code qui mentionne bien la fermeture du pdf, mais qui au lieu de me fermer le pdf m'envoie le fichier excel entier a l'imprimante.
Sub test()
Dim Wk As Workbook
Set Wk = Workbooks("MATRICE FIDELIA TVA 101.xlsm")
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
Imprimante_AdobePDF, Collate:=True
Call Fermer_Un_Programme("Acrobat.exe")
Wk.Activate
End Sub
Sub Fermer_Un_Programme(Prog As String)
Dim StrComputer As String, objWMIService As Object
StrComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & StrComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = '" & Prog & "'")
For Each objProcess In colProcessList
objProcess.Terminate
Next
End Sub
Si tu peux en faire quelque chose de mieux ?
Sub test()
Dim Wk As Workbook
Set Wk = Workbooks("MATRICE FIDELIA TVA 101.xlsm")
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
Imprimante_AdobePDF, Collate:=True
Call Fermer_Un_Programme("Acrobat.exe")
Wk.Activate
End Sub
Sub Fermer_Un_Programme(Prog As String)
Dim StrComputer As String, objWMIService As Object
StrComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & StrComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = '" & Prog & "'")
For Each objProcess In colProcessList
objProcess.Terminate
Next
End Sub
Si tu peux en faire quelque chose de mieux ?
f894009
Messages postés
17185
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
15 avril 2024
1 701
18 nov. 2014 à 18:55
18 nov. 2014 à 18:55
Re,
au lieu de me fermer le pdf m'envoie le fichier excel ben oui, le code est fait pour ca. Je regarde ce que je peux en faire pur la fermeture de adobe reader (ce n'est pas acrobat.exe, mais AcroRd32.exe)
A+
au lieu de me fermer le pdf m'envoie le fichier excel ben oui, le code est fait pour ca. Je regarde ce que je peux en faire pur la fermeture de adobe reader (ce n'est pas acrobat.exe, mais AcroRd32.exe)
A+
f894009
Messages postés
17185
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
15 avril 2024
1 701
18 nov. 2014 à 19:15
18 nov. 2014 à 19:15
Re,
devrait aller:
A+
devrait aller:
Option Explicit
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private 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
'imprimer fichier PDF depuis EXCEL
Sub ImprimerFichier()
Dim x As Long, Chemin_Fichier As String, Nom_Fichier As String, Acrobat
Chemin_Fichier = "D:\Session_Cyril\Mes documents\"
x = FindWindow("XLMAIN", Application.Caption)
Nom_Fichier = Dir(Chemin_Fichier & "*.PDF")
'boucle nom de fichier PDF
Do While Nom_Fichier <> ""
ShellExecute x, "print", Chemin_Fichier & Nom_Fichier, "", "", 1
'attente
Application.Wait (Now + TimeValue("0:00:01"))
Call Fermer_Un_Programme("AcroRd32.exe")
Nom_Fichier = Dir
Loop
End Sub
Sub Fermer_Un_Programme(Prog As String)
Dim StrComputer As String, objWMIService As Object, objProcess, colProcessList
StrComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & StrComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery("Select * from Win32_Process Where Name = '" & Prog & "'")
For Each objProcess In colProcessList
objProcess.Terminate
Next
End Sub
A+
cyrga11
Messages postés
48
Date d'inscription
mardi 18 mars 2014
Statut
Membre
Dernière intervention
28 novembre 2014
18 nov. 2014 à 19:31
18 nov. 2014 à 19:31
Si j'ai bien compris tout ce code remplace aussi celui qui imprime les pdf qui se trouvent dans le dossier.
Seulement cela m'affiche une erreur d'exécution '-2147217406 (80041002)':
Non trouvé
et quand je clique sur débogage, ça m'envoie dans Visual Basic et la phrase suivante est surligné en jaune :
objProcess.Terminate
Seulement cela m'affiche une erreur d'exécution '-2147217406 (80041002)':
Non trouvé
et quand je clique sur débogage, ça m'envoie dans Visual Basic et la phrase suivante est surligné en jaune :
objProcess.Terminate
cyrga11
Messages postés
48
Date d'inscription
mardi 18 mars 2014
Statut
Membre
Dernière intervention
28 novembre 2014
18 nov. 2014 à 19:41
18 nov. 2014 à 19:41
Si j'augmente le TimeValue :
Application.Wait (Now + TimeValue("0:00:50"))
ça marche, mais quand le pdf se ferme, l'erreur de débogage apparaît et un seul fichier sur deux est envoyer a l'imprimante.
Désolé je voie bien que c'est pas évident et merci encore pour l'aide apporté
Application.Wait (Now + TimeValue("0:00:50"))
ça marche, mais quand le pdf se ferme, l'erreur de débogage apparaît et un seul fichier sur deux est envoyer a l'imprimante.
Désolé je voie bien que c'est pas évident et merci encore pour l'aide apporté