Macro de publipostage en multiple fichiers pdf - Message d'erreur

Macro de publipostage en multiple fichiers pdf - Message d'erreur - VB/VBA/VBS - Programmation

Marsh Posté le 12-04-2021 à 15:50:13    

Une amie m'a demandé de l'aide pour mettre au point un publipostage générant plusieurs fichiers pdf pour chaque ligne d'un fichier excel.
 
J'ai corrigé le fichier excel et publipostage sous word.
J'ai trouvé quelques macro permettant le publipostage en multiples fichiers pdf.
 

Citation :

Sub publipostagepdf()
' Déclaration des variables
Dim iR As Integer
Dim i As Integer
Dim oDoc As Document
Dim nom As String
Dim oDS As MailMergeDataSource
Dim path As String
 
path = Application.ActiveDocument.path
 
' Affectation des objets
Set oDoc = ActiveDocument
Set oDS = oDoc.MailMerge.DataSource
 
iR = oDoc.MailMerge.DataSource.RecordCount
Debug.Print iR
For i = 1 To iR
    With oDoc.MailMerge
        'Définition du premier et dernier enregistrement
        .DataSource.FirstRecord = i
 
        .DataSource.LastRecord = i
        ' Envoi des données dans un nouveau document
        .Destination = wdSendToNewDocument
        ' Exécution du publipostage
        .Execute
        ' Actualisation de l'enregistrement pour la sauvegarde
        .DataSource.ActiveRecord = i
        'Utilisation de deux champs pour obtenir le nom du document
        nom = .DataSource.DataFields("NomFichier" ) 'Remplacer Nom" par le champ à utiliser
        Debug.Print DocName; i
        'Application.DisplayAlerts = False
             With ActiveDocument
            .SaveAs FileName:=path & "\Sortie\" & Format(Date, "yy" ) & Format(Date, "mm" ) & Format(Date, "dd" ) & Format(Time, "hhmm" ) & ".doc"
            .Close
             End With
    End With
    ' Sauvegarde du document publiposté
    With ActiveDocument
        .ExportAsFixedFormat OutputFileName:=path & "\Sortie\" & nom & ".pdf", ExportFormat:=wdExportFormatPDF, OpenAfterExport:=False
    End With
Next i
End Sub


 
Au début je ne voyais pas comment sauvegarder en chemin relatif, mais j'ai trouvé.
 
Les fichiers se génèrent bien au bon endroit, mais j'obtiens un message d'erreur :
https://nsa40.casimages.com/img/2021/04/12/210412040033694526.jpg
 
C'est manifestement lié à la ligne :

Citation :

.ExportAsFixedFormat OutputFileName:=path & "\Sortie\" & nom & ".pdf", ExportFormat:=wdExportFormatPDF, OpenAfterExport:=False


 
Je ne vois pas ce qui peut coincer.


Message édité par Erasme le 12-04-2021 à 17:28:35
Reply

Marsh Posté le 12-04-2021 à 15:50:13   

Reply

Marsh Posté le 12-04-2021 à 15:51:51    

Une histoire de slash simple vs slash double? Autrement dit C:\\test?

Reply

Marsh Posté le 12-04-2021 à 16:01:49    

C'est pas achat-ventes ici, tu as dû faire une fausse manip vu le nouveau titre. :o

Reply

Marsh Posté le 12-04-2021 à 17:20:45    

Oui, soucis à chaque fois que je modifie la premier message, ça remet systématiquement un titre d'un ancien topic que j'avais créé il y a plusieurs mois...
Je ne comprend pas pourquoi.


Message édité par Erasme le 12-04-2021 à 17:35:44
Reply

Marsh Posté le 12-04-2021 à 17:34:28    

rat de combat a écrit :

Une histoire de slash simple vs slash double? Autrement dit C:\\test?


 
Il y avait une erreur dans le copier-coller, c'était la version avec le chemin absolu et non relatif, mais la logique est proche.
 
Quoi qu'il en soit j'ai tenté le "\\" en début et/ou fin de "\Sortie\"
Même résultat.

Reply

Marsh Posté le 12-04-2021 à 23:59:09    

C'était causé par le fait que j'avais anticipé des lignes, donc vides dans le fichier excel.
La macro n'appréciait pas.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed