Combiner des PDF avec VB

Bonjour,

Je suis probablement dans le champ mais je me demande s'il est possible de combiner des PDF en VB. J'ai deux dossiers ( A et B) contenant des PDF.Le dossier B contient plusieurs PDF ayant le même nom que des PDF dans le dossier A. Je voudrais combiner tout les PDF de B ayant un nom commun avec ceux du dossier A.

Est-ce possible ?

Je sais que je suis un peu hors sujet mais je tente ma chance :)

Merci

Salut,

Je pense qu'en bidouillant avec la commande Shell et en passant par la ligne de commande de PDF Creator, et utiliser la commande /Merge suivie de /OutputFile, tu dois pouvoir le faire.

Bien entendu il faut que PDF Creator soit installé.

Bonjour,

C'est effectivement possible avec PDFCreator de pdfforge. Ne pas se tromper d'éditeur car il existe des versions commerciales de PDFCreator.

L'installation de PDFCreator apporte à l'éditeur VBA une bibliothèque : PDFCreator Com comportant des classes permettant de fusionner des PDF.

Bonsoir,

ci-dessous exemple de procédure de fusion de fichiers PDF avec pour paramètres

1- le dossier où se trouve les fichiers à fusionner

2- le nom du fichier résultant

'Installer PDFCreator de pdfforge version 4.3.0
'Ajouter la référence PDFCreator COM dans le menu Outils de l'éditeur VBA
Sub FusionPDF(chemin_fichiers_à_fusionner As String, nom_fichier_fusion As String)

    Dim PDFCr As New PDFCreator_COM.PdfCreatorObj, workflow As New PDFCreator_COM.Queue
    Dim job_print As PDFCreator_COM.PrintJob
    Dim fso As Object
    Dim nom_fichier As String, fichier As Object

    '// assignation nom fichier et création objet FileSystemObject
    nom_fichier = chemin_fichiers_à_fusionner & "\" & nom_fichier_fusion
    Set fso = CreateObject("Scripting.FileSystemObject")

    '// Contrôles
    If Not fso.FolderExists(chemin_fichiers_à_fusionner) Then MsgBox "chemin fichiers à fusionner invalide": Exit Sub
    If fso.FileExists(nom_fichier) Then fso.DeleteFile (nom_fichier)

    '// Fusion fichiers
    With workflow
        .Initialize

        For Each fichier In fso.GetFolder(chemin_fichiers_à_fusionner).Files
            If fso.GetExtensionName(fichier.Path) = "pdf" Then PDFCr.AddFileToQueue fichier.Path
        Next fichier
        If Not .Count > 1 Then MsgBox "pas de fichiers à fusionner": Exit Sub

        .WaitForJobs .Count, .Count * 3
        .MergeAllJobs
    End With

    '// Création d'un job d'impression permettant de créer le fichier PDF relatif à la fusion
    Set job_print = workflow.NextJob
    With job_print
      .SetProfileByGuid "DefaultGuid"
      .SetProfileSetting "Printing.PrinterName", "PDFCreator"
      .SetProfileSetting "Printing.SelectPrinter", "SelectedPrinter"
      .SetProfileSetting "ShowProgress", "false"
      .ConvertTo nom_fichier
    End With

    '// Libération instance PDFCreator
    workflow.ReleaseCom

End Sub
Rechercher des sujets similaires à "combiner pdf"