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 43 44 45 46 47 48 49 50 51 52 53 54 55
| Private Sub CdB_Publipostage_Click()
Dim docWord As Word.Document
Dim appWord As Word.Application
Dim NomBase As String
Dim MonCheminExcel As String
Dim MonfichierWord As String
'Récupère le chemin de ma spreadsheet
Chemin = ThisWorkbook.FullName
NomBase = MonCheminExcel
'Ouverture d'une session Word
Application.ScreenUpdating = False
Set appWord = New Word.Application
appWord.Visible = True
'Récupère le chemin du document Word
MonfichierWord = Application.GetOpenFilename("*.txt,*.doc", , "Please, selected the design report model.") 'Boite de dialogue personnalisée du type "OUVRIR"
' If MonfichierWord = False Then 'Dans le cas où l'utilisateur click sur le bouton "Annuler"
' MsgBox "No file was selected"
' Exit Sub
' End If
'Ouverture du document Word
Set docWord = appWord.Documents.Open(MonfichierWord)
'Fonctionnalité de publipostage pour le Design Report
With docWord.MailMerge
'Ouvre la base de données
.OpenDataSource Name:= _
NomBase, ConfirmConversions:=False, ReadOnly:=False _
, LinkToSource:=True, AddToRecentFiles:=False, PasswordDocument:="", _
PasswordTemplate:="", WritePasswordDocument:="", WritePasswordTemplate:= _
"", Revert:=False, Format:=wdOpenFormatAuto, Connection:="", SQLStatement _
:="SELECT * FROM [Sheet16]", SQLStatement1:="", SubType:=wdMergeSubTypeOther
'Spécifie la fusion vers l'imprimante
.Destination = wdSendToPrinter
.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 |
Partager