Publipostage

Le
YvesBz
Bonjour,

Je cherche un moyen (par vba) de déclencher à partir d'excel un publipostage
sur word.

Merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Philippe.R
Le #17423871
Bonjour,
Regardes les pistes proposées ici :
http://www.excelabo.net/moteurs/motsclefs.php?mot=word
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"YvesBz" news:
Bonjour,

Je cherche un moyen (par vba) de déclencher à partir d'excel un
publipostage sur word.

Merci



Daniel.C
Le #17426011
Bonjour.
Voici un exemple simple. Un classeur "BaseDeDonnees.xls" contient deux
champs :
- Nom
- Prénom
et une macro "test" qui va ouvrir le document "Lettre.doc" et effectuer le
publipostage.
Pour appliquer cet exemple à ton besoin, crée ton ta base de données, ton
document Word et applique le publipostage en utilisant l'assistant Word.
Sauvegarde le document où les champs de fusion ont été définis. Modifie la
macro pour indiquer le chemin et le nom du document Word ainsi que ceux de
la base de données Excel. Voici le code de la macro :

Sub test()
Dim WdApp As Object
'démarre une instance de Word
Set WdApp = CreateObject("Word.Application")
WdApp.Visible = True
' ouvre un document existant
WdApp.DisplayAlerts = False
' ouvre le document Word
WdApp.Documents.Open "E:donneesdanielmpfelettre.doc"
WdApp.DisplayAlerts = True
'indique la base de données; fais attention à
"Microsoft.ACE.OLEDB.12.0", le 12 doit être relatif à Office 2007
'si tu as une erreur là dessus, essaie 11 pour XL2003 etc.
WdApp.ActiveDocument.MailMerge.OpenDataSource Name:= _
"E:DonneesDanielmpfeBaseDeDonnees.xls",
ConfirmConversions:úlse, _
ReadOnly:úlse, LinkToSource:=True, AddToRecentFiles:úlse, _
PasswordDocument:="", PasswordTemplate:="",
WritePasswordDocument:="", _
WritePasswordTemplate:="", Revert:úlse, Format:=wdOpenFormatAuto,
_
Connection:= _
"Provider=Microsoft.ACE.OLEDB.12.0;User ID­min;Data
Source=E:DonneesDanielmpfeBaseDeDonnees.xls;Mode=Read;Extended
Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet
OLEDB:Registry Path="""";Jet OLEDB:Engine Type5;Jet OLEDB:Database Lockin"
_
, SQLStatement:="SELECT * FROM `Feuil1$`", SQLStatement1:="",
SubType:= _
wdMergeSubTypeAccess
With WdApp.ActiveDocument.MailMerge
.Destination = wdSendToNewDocument
.SuppressBlankLines = True
With .DataSource
.FirstRecord = wdDefaultFirstRecord
.LastRecord = wdDefaultLastRecord
End With
.Execute Pause:úlse
End With
End Sub

Dans la fenêtre VBE Excel, clique sur Outils / Références et coche Microsoft
Word xx Object Library

--
Cordialement.
Daniel
"YvesBz"
Bonjour,

Je cherche un moyen (par vba) de déclencher à partir d'excel un
publipostage sur word.

Merci



Publicité
Poster une réponse
Anonyme