Bonjour,
Depuis l'année derniére j'utilise une macro de heureux_oli, trouvée ici
https://heureuxoli.developpez.com/of.../publipostage/
Je l'ai utilisée pour la dernière fois il y a 10 jours sans aucun problème.
Aujourd'hui j'en avais de nouveau besoin, mais la macro s'arrête à la fonction "execute" et laisse le fichier ouvert et un nouveau fichier "lettre type 1".
Je n'ai pas l'impression d'avoir changé quelque chose.
est ce qu'il y a eu récemment une mise à jour dans office qui empêcherait la macro de fonctionner correctement ?
Voici la macro telle qu'elle est chez moi
Voyez vous une erreur évidente ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 ' Déclaration des variables Dim iR As Integer Dim i As Integer Dim oDoc As Document Dim DocName As String Dim DocNum As String Dim DocOrder As String Dim DocCountry As String Dim oDS As MailMergeDataSource ' 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 DocNum = .DataSource.DataFields(15).Value DocOrder = .DataSource.DataFields(1).Value DocCountry = .DataSource.DataFields(8).Value DocName = DocNum & "_" & DocOrder & "_" & DocCountry Debug.Print DocName; i End With ' Sauvegarde du document publiposté With ActiveDocument .SaveAs "d:\FAMZ2018-" & DocName & ".docx" .Close End With Next i End Sub
Toute aide est appréciée, merci beaucoup pour votre temps.
Partager