XL 2010 Impression de tous les fichiers pdf présents dans un dossier depuis Excel

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

jozerebel

XLDnaute Occasionnel
Bonjour à tous,

Je cherche une macro excel qui imprimerait tous les Pdf stockés dans un dossier dont je connais le nom.

Pouvez-vous m'aider svp ?

D'avance merci !!!!
 
Bonjour,

D'après forum.excel-pratique.com citant .developpez.net avec des commentaires en anglais :
VB:
' Test which version of VBA you are using.
#If VBA7 Then
   ' API function to locate a window.
   Declare PtrSafe Function FindWindow Lib "user32" _
      Alias "FindWindowA" ( _
      ByVal lpClassName As String, _
      ByVal lpWindowName As String) As LongPtr
      
    Private Declare PtrSafe Function ShellExecute Lib _
        "shell32.dll" Alias "ShellExecuteA" ( _
        ByVal hwnd As LongPtr, ByVal lpOperation As String, ByVal lpFile As String, _
        ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As LongPtr
#Else
   ' API function to locate a window.
   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
#End If
Sub ImprimerFichier()
    Dim NomFichier As String
    Dim x As Long
    x = FindWindow("XLMAIN", Application.Caption)
    NomFichier = "D:\Users\dcola\Documents\Donnees\Daniel\mandat_de_prelevement_sepa.pdf"
    ShellExecute x, "print", NomFichier, "", "", 1
End Sub

Cordialement.

Daniel
 
Bonjour jozerebel,

Il te suffit de lister les noms des fichiers sur ta feuille excel et de boucler sur ces noms le code précédent.
Quelque chose de ce genre :

VB:
Dim NameFile as string
For i = 1 to 10
    NameFile = Range("A" & i)
    'Appel de la fonction d'impression d'un fichier unique
    'Dans cet appel penser à modifier la fin de l'appel tel que par ex NomFichier = "D:\Blablabla" & NameFile
Next i

Bonne continuation
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
10
Affichages
170
Retour