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 56 57 58 59 60 61 62 63
| Private Sub ImprimeMulti_Click()
Dim wdapp As Word.Application
Dim wDoc As Word.Document
Dim RecetteChemin As String
Dim RecetteNom As String
Dim RecetteNomComplet As String
RecetteChemin = "D:\Cuisine\Papinette_Recettes"
RecetteNom = [Forms]![ForRecettesPréparation]![Nom]
RecetteNomComplet = RecetteChemin & "\" & RecetteNom & ".docx"
Call ActualTabRecettesImpressionMulti
NumOrdre = Sélecteur.Column(1)
' Démarrer Word
Set wdapp = New Word.Application
wdapp.Visible = True
With wdapp
' Ouvrir le document
Documents.Add Template:= _
"C:\Users\aphil\Documents\Modèles Office personnalisés\Modèle Recette impression Multi.dotm" _
, NewTemplate:=False, DocumentType:=0
' Connecter la bdd et la table
ActiveDocument.MailMerge.OpenDataSource Name:= _
"D:\Cuisine\Livre_Cuisine_Recette.accdb", ConfirmConversions:=False, _
ReadOnly:=False, LinkToSource:=True, AddToRecentFiles:=False, _
PasswordDocument:="", PasswordTemplate:="", WritePasswordDocument:="", _
WritePasswordTemplate:="", Revert:=False, Format:=wdOpenFormatAuto, _
Connection:= _
"Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=D:\Cuisine\Livre_Cuisine_Recette.accdb;Mode=Read;Extended Properties="""";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Engine Type=6;Jet OLEDB:Database Locking Mode=0;Jet OLEDB" _
, SQLStatement:="SELECT * FROM `TabRecettesImpressionMulti`", _
SQLStatement1:="", SubType:=wdMergeSubTypeAccess
' Lancer le publipostage
With ActiveDocument.MailMerge
.Destination = wdSendToNewDocument
.SuppressBlankLines = True
With .DataSource
.FirstRecord = [Forms]![ForRecettesPréparation]![NumOrdre]
.LastRecord = [Forms]![ForRecettesPréparation]![NumOrdre]
End With
.Execute Pause:=False
End With
' Enregistrer le document
MsgBox "Enregistrement de la recette " & "< " & RecetteNom & " >"
ActiveDocument.SaveAs2 FileName:=RecetteNomComplet, FileFormat:= _
wdFormatXMLDocument, LockComments:=False, Password:="", AddToRecentFiles _
:=True, WritePassword:="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts _
:=False, SaveNativePictureFormat:=False, SaveFormsData:=False, _
SaveAsAOCELetter:=False, CompatibilityMode:=15
'.ActiveDocument.Close ' à activer si pas de modif du document, idem pour ci-dessous
End With 'With wdapp
' Fermer et libérer les objets
' wdapp.Quit
' Set wdapp = Nothing
End Sub |
Partager