Sub Mailing()
'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
Dim MaPlage As Range
'ccccccccccccccccccccc
SupprimerPDFCreator
'ccccccccccccccccccccc
NomBase = "E:\E_tiquettes\CONTACT_CARTES_ACCES_jlm 08_12_14_revision_2ym.xls"
Dim sh1 As Worksheet
Set sh1 = Sheets(Sheets("menu").Range("c1").Text) 'Worksheets([D3])
Application.ScreenUpdating = False
' ***************************************************************
' Export des données vers une feuille Temp ayant O en colonne A
' ****************************************************************
Worksheets.Add().Name = "Temp"
sh1.Activate
With ActiveSheet
Cells.Select
Selection.Copy
End With
Sheets("Temp").Select
Cells.Select
ActiveSheet.Paste
' ******************************************
' Début du mailing
' ******************************************
'Application.ScreenUpdating = False
Set appWord = New Word.Application
appWord.Visible = True
'Ouverture du document principal Word
Set docWord = appWord.Documents.Open("E:\E_tiquettes\Matrice_etiquettes1.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 [Temp$]"
'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
' ***************************************
' Suppression de la feuille temporaire
' ***************************************
Sheets("Temp").Select
Application.DisplayAlerts = False
ActiveWindow.SelectedSheets.Delete
Application.DisplayAlerts = True
End Sub