publipostage Word à partir d'excel

Le
dunkelzahn
Bonjour,

J'espère ne pas me tromper dans la forme de demande.
J'ai fais beaucoup de recherches sur le net et sur ce groupe et malgré
tout, je n'arrive pas à trouver ni comprendre pourquoi ça ne marche
pas.
Ce que je veux faire est à partir d'une base excel, je veux ouvrir un
document word qui dispose de champs (d'où le publipostage)

Quand je le fais manuellement à partir du document word et via les
icones de Word, ca marche nickel chrome.
Mais quand je le fais via VBA, là j'ai des erreurs et je ne comprends
pas le comment du pourquoi.

Voili mon code actuel :
Dim DocWD As Object
Set appWD = CreateObject("Word.Application")
appWD.Visible = True
Set DocWD =
appWD.documents.Open(Left(ActiveWorkbook.Path,
InStrRev(ActiveWorkbook.Path, "", -1, vbTextCompare)) & "cartes
Cartes_R_C_recto_CB.doc")
DocWD.MailMerge.OpenDataSource
ActiveWorkbook.FullName, _
wdOpenFormatAuto, _
True, _
False, _
True, _
False, _
"", _
"", _
False, _
"", _
"", _
Connection:="Provider=Microsoft.Jet.OLEDB.
4.0;Password="""";User ID=Admin;Data Source=" &
ActiveWorkbook.FullName & ";Mode=Read;Extended
Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet
OLEDB:Registry Path="""";Jet OLEDB:Database Password="""";Jet
OLEDB:Engine Type=35;Jet OLEDB:Database Locking Mode=0;Jet
OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk
Transactions=1;Jet OLEDB:New Database Password="""";Jet OLEDB:Create
System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't
Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica
Repair=False;Jet OLEDB:SFP=False", _
SQLStatement:="SELECT * FROM `'CARTE_ADH#$'`"


Pour le "Connection", j'ai repris à partir de la commande
activedocument.MailMerge.DataSource.ConnectString et pour le
"SQLStatement", j'ai repris depuis la commande
activedocument.MailMerge.DataSource.QueryString

Quand je l'exécute, j'ai le message suivant :

Erreur d'exécution '4198'
La commande a échoué

Je ne vois plus ou est le programme. Y a til une âme charitable pour
m'aider SVP ?
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
dunkelzahn
Le #5023891
Personne pour m'aider ?

On 9 nov, 23:26, dunkelzahn
Bonjour,

J'espère ne pas me tromper dans la forme de demande.
J'ai fais beaucoup de recherches sur le net et sur ce groupe et malgré
tout, je n'arrive pas à trouver ni comprendre pourquoi ça ne marche
pas.
Ce que je veux faire est à partir d'une base excel, je veux ouvrir un
document word qui dispose de champs (d'où le publipostage)

Quand je le fais manuellement à partir du document word et via les
icones de Word, ca marche nickel chrome.
Mais quand je le fais via VBA, là j'ai des erreurs et je ne comprends
pas le comment du pourquoi.

Voili mon code actuel :
Dim DocWD As Object
Set appWD = CreateObject("Word.Application")
appWD.Visible = True
Set DocWD =
appWD.documents.Open(Left(ActiveWorkbook.Path,
InStrRev(ActiveWorkbook.Path, "", -1, vbTextCompare)) & "cartes
Cartes_R_C_recto_CB.doc")
DocWD.MailMerge.OpenDataSource
ActiveWorkbook.FullName, _
wdOpenFormatAuto, _
True, _
False, _
True, _
False, _
"", _
"", _
False, _
"", _
"", _
Connection:="Provider=Microsoft.Jet.OLEDB.
4.0;Password="""";User ID­min;Data Source=" &
ActiveWorkbook.FullName & ";Mode=Read;Extended
Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet
OLEDB:Registry Path="""";Jet OLEDB:Database Password="""";Jet
OLEDB:Engine Type5;Jet OLEDB:Database Locking Mode=0;Jet
OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk
Transactions=1;Jet OLEDB:New Database Password="""";Jet OLEDB:Create
System Databaseúlse;Jet OLEDB:Encrypt Databaseúlse;Jet OLEDB:Don't
Copy Locale on Compactúlse;Jet OLEDB:Compact Without Replica
Repairúlse;Jet OLEDB:SFPúlse", _
SQLStatement:="SELECT * FROM `'CARTE_ADH#$'`"

Pour le "Connection", j'ai repris à partir de la commande
activedocument.MailMerge.DataSource.ConnectString et pour le
"SQLStatement", j'ai repris depuis la commande
activedocument.MailMerge.DataSource.QueryString

Quand je l'exécute, j'ai le message suivant :

Erreur d'exécution '4198'
La commande a échoué

Je ne vois plus ou est le programme. Y a til une âme charitable pour
m'aider SVP ?


Publicité
Poster une réponse
Anonyme