Bonjour
Ces deux fonctions Word "Publipostage" et "formulaire" ne fonctionnent pas simultanément en "natif" mais peut-on contourner le problème en vba ? J'ai donc une macro qui fait le publipostage page par page avec les noms associés, la protection correspondant aux "formfields" seuls autorisés mais les champs de formulaire disparaissent toujours lors de la création des documents.
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
 
Sub PubliOnePage()
' publipostage avec une page par fiche
Dim i, iR As Integer
Dim oDoc As Document
Dim DocName  As String
Dim oDS As MailMergeDataSource
 
Set oDoc = ActiveDocument
Set oDS = oDoc.MailMerge.DataSource
 
oDS.ActiveRecord = wdLastRecord
iR = oDS.ActiveRecord
oDS.ActiveRecord = wdFirstRecord
 
Debug.Print iR
For i = 1 To iR
    With oDoc.MailMerge
        .DataSource.FirstRecord = i
        .DataSource.LastRecord = i
        .Destination = wdSendToNewDocument
        .Execute
        .DataSource.ActiveRecord = i
        DocName = "PJ_"
        DocName = DocName & .DataSource.DataFields(1).Value
        Debug.Print DocName; i
    End With
    With ActiveDocument
        .Protect Password:="1234", NoReset:=False, Type:= _
        wdAllowOnlyFormFields, UseIRM:=False, EnforceStyleLock:=False
        .SaveAs2 "D:\PJ_DOC\" & DocName & ".docX", wdFormatDocumentDefault
        .Close False
    End With
Next i
End Sub
Quelqu'un a-t-il une idée ? Je n'ai pas trouvé de format de sauvegarde plus approprié que le DocumentDefault en .docx.
Merci d'avance.