Bonjour,
J'effectue un publibpostage entre un fichier excel et un modèle Word. dans ce dernier il y a des macro que je souhaite activer pour compléter le publipostage.
j'aurai aimé effectué le publipostage complet et arrivé à un fichier final complet. et cela ne marche pas. D'autre part le fichier obtenu par un publipostage "à la main" ne contient pas les macros du fichier initial.
Merci de votre aide.
J'effectue un publibpostage entre un fichier excel et un modèle Word. dans ce dernier il y a des macro que je souhaite activer pour compléter le publipostage.
j'aurai aimé effectué le publipostage complet et arrivé à un fichier final complet. et cela ne marche pas. D'autre part le fichier obtenu par un publipostage "à la main" ne contient pas les macros du fichier initial.
Merci de votre aide.
Private Sub commandButtonPublipostage_Click()
'Nécessite d'activer la référence "Microsoft Word xx.x Object Library"
Dim docWord As Word.Document
Dim appWord As Word.Application
Dim NomBase As String
NomBase = "D:\Classeur4C.xls"
Application.ScreenUpdating = False
Set appWord = New Word.Application
appWord.Visible = True
'Ouverture du document principal Word
Set docWord = appWord.Documents.Open("D:\QD4C.doc")
'fonctionnalité de publipostage pour le document spécifié
With docWord.MailMerge
'Ouvre la base de données
.OpenDataSource Name:=NomBase, _
Connection:="Driver={Microsoft Excel Driver (*.xls)};" & _
"DBQ=" & NomBase & "; ReadOnly=True;", _
SQLStatement:="SELECT * FROM [Feuil1$]"
'Spécifie la fusion vers l'imprimante
.Destination = wdSendToNewDocument
.SuppressBlankLines = True
'Prend en compte l'ensemble des enregistrements
With .DataSource
.FirstRecord = wdDefaultFirstRecord
.LastRecord = wdDefaultLastRecord
End With
'Exécute l'opération de publipostage
'.Execute Pause:=False
End With
Application.ScreenUpdating = True
'Fermeture du document Word
docWord.Close False
appWord.Quit
End Sub