Publipostage avec images et fragmentation
m@rina Messages postés 27507 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Je souhaite réaliser des Fiches Techniques par publipostage à partir d'une base Excel.
J'arrive à créer mon publipostage avec mes images, mais je suis obligé de fusionner et ensuite faire ctrl+A et F9 pour mettre à jour mes images.
A l'aide d'une macro j'arrive à enregistrer chaque enregistrements séparément, mais dans ce cas, je ne réalise pas la fusion et donc je ne peux pas mettre à jour toutes mes images.
Est ce qu'il existe une solution pour enregistrer chaque FT et mettre à jour les images ?
Je précise que les fiches techniques peuvent faire 2 pages, 3 pages .... donc je ne peux pas faire un découpage aprés la fusion.
Merci de votre aide
Windows / Firefox 119.0
3 réponses
-
Bonjour.
Je te dirai qu'à mon humble avis, le publipostage n'est pas la meilleure façon de fabriquer des fiches techniques ; quels avantages y trouves-tu ?
-
Bonjour,
J'utilise déjà le publipostage pour créer des étiquettes de rayon à partir d'une base Excel donc je voulais reprendre le même principe pour automatiser les fiches techniques à partir d'une base Excel.
-
Bonjour,
Il faut utiliser cette macro :
https://www.faqword.com/index.php/word/publipostage/1075 à laquelle on ajoute la mise à jour des champs pour les images, ce qui donne :
Sub publipostage() Dim fusion As MailMerge Dim x As Integer, nb As Integer Dim chemin As String, nom As String Set fusion = ActiveDocument.MailMerge chemin = "D:\Mes documents\" 'mettre ici le chemin complet du dossier où stocker les fichiers sans oublier le \ à la fin nb = fusion.DataSource.RecordCount For x = 0 To nb - 1 With fusion .DataSource.FirstRecord = x + 1 .DataSource.LastRecord = x + 1 .Destination = wdSendToNewDocument .DataSource.ActiveRecord = x + 1 nom = .DataSource.DataFields("Nom") 'Remplacer Nom" par le champ à utiliser .Execute End With ActiveDocument.Fields.Update 'mett à jour les champs Photos ActiveDocument.ExportAsFixedFormat OutputFileName:=chemin & nom & ".pdf", ExportFormat:=wdExportFormatPDF, openafterexport:=False ActiveDocument.Close savechanges:=False Next End SubCette macro se lance directement depuis le document principal, il ne faut pas faire la fusion avant. Elle nomme les fichiers avec le champ "Nom". Mais évidemment, on peut choisir ce que l'on veut.
m@rina