Salut au forum,

Ce code VBA doit me permettre d'enregistrer chaque document lors de mon publipostage.
Sauf que je n'arrive pas à le modifier. Comment faut-il le modfier pour mettre l'enregistrement au niveau de mes champs d'enregistrement ? Quelle est la procédure pour l'installer sur Word et pour l'utiliser plusieurs fois ?

Merci bcp,

Mes champs sont : Nom, Prenom


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
Sub TestPublipost()
' Déclaration des variables
Dim iR As Integer
Dim i As Integer
Dim oDoc As Document
Dim DocName 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
DocName = .DataSource.DataFields(2).Value
DocName = DocName & "-" & .DataSource.DataFields(3).Value
Debug.Print DocName; i
End With
    ' Sauvegarde du document publiposté
With ActiveDocument
.SaveAs "c:\temp\" & DocName & ".doc"
.Close
End With
Next i
End Sub