Impression pdf(s) d'un dossier via macro

Bonjour le Forum,

Après quelques recherches sur le net, j'ai trouvé pas mal de macro qui permettent d'imprimer UN fichier PDF d'un dossier via Excel.

Ma question est de savoir si il est possible de lancer l'impression de plusieurs fichiers PDF d'un dossier via macro?

Et si oui me donner un exemple de code....

Le top serait qu'au lancement de la macro, une fenêtre Windows s'ouvre pour que l'utilisateur sélectionne le dossier en question.

Un grand merci d'avance pour vos retours!!

Re,

J'ai trouvé ce code qui fait ce que je cherche....

Cependant, il faut renseigner en dur le chemin du répertoire qui contient les fichiers pdf?!!

Serait-il possible d'avoir une fenêtre demandant le dossier en question? Car j'ai plusieurs dossiers contenants des pdf à imprimer... du coup cela m'éviterait de faire un bouton pour chaque macro ^^

De plus, la macro lance acrobat... et il faut le fermer manuellement!! Serait-il possible de fermer l'application en auto?

Voici le code en question :

Option Explicit

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
Const SW_SHOWNORMAL = 1

Dim NbFichiers As Long
Dim Tableau() As String
Const Dossier As String = " insérer ici le chemin du répertoire qui contient les fichiers pdf"

Sub Tst()
Dim hwnd As Long
Dim i As Long
Dim DossierOk As String

    DossierOk = Dossier
    If Right(DossierOk, 1) <> "\" Then DossierOk = Dossier & "\"
    ListeFichiers DossierOk, "pdf"
    If NbFichiers > 0 Then
        For i = 1 To UBound(Tableau)
            ShellExecute hwnd, "print", DossierOk & Tableau(i), "", "", SW_SHOWNORMAL
        Next
    End If
End Sub

Private Sub ListeFichiers(ByVal NomDossierSource As String, ByVal Extension As String)
Dim NomFichier As String
    NomFichier = Dir(NomDossierSource & "*." & Extension)

    Erase Tableau
    NbFichiers = 0
    Do While Len(NomFichier) > 0
        NbFichiers = NbFichiers + 1
        ReDim Preserve Tableau(1 To NbFichiers)
        Tableau(NbFichiers) = NomFichier
        NomFichier = Dir()
    Loop
End Sub

Merci pour les réponses!!

Un petit Re UP!!

J'ai trouvé ce code qui permet d'ouvrir une fenêtre Windows pour choix de dossier :

With Application.FileDialog(msoFileDialogFolderPicker)
    .Show
    x = .SelectedItems(1)
End With

Mais je n'arrive pas à l'insérer dans mon code précédent pour utiliser "x" comme chemin du répertoire des PDF à imprimer...

Si quelqu'un peut me filer un petit coup de main??

Merci par avance ^^

Rechercher des sujets similaires à "impression pdf dossier via macro"