Perte de la fusion lors de l'ouverture d'un *.doc par macro Excel

Le
Jac
Bonjour à tous,

j'ai un document Word avec des champs de fusion qui s'appuie sur un fichier
Excel.

Quand j'ouvre le document Word par double click, un message m'annonce que
les "données de ma base de données seront placées dans le document". Je
valide et le doc se met à jour des données actuelles d'Excel.

Dans un fichier Excel, une macro me fait faire une sélection de fiche et
renplace le fichier cible de mon publipostage puis ouvre, mon *.doc afin
d'afficher mon publipostage. L'ouverture de Word est correctement
paramétrée. Le doc est ouvert par

Set Dc = Wd.Documents.Open("c:LA_FICHE.doc")
ou par
Set Dc = Wd.Documents.Add("c:LA_FICHE.doc")
ce qui donne le même résultat.

Mais, le problème, c'est que le fichier est ouvert sans le lien vers mon
fichier de données, les champs de fusion étant bien présent.

J'ai récupéré dans Word et adapté dans Excel le vba de l'attachement à la
source :
Wd.MailMerge.OpenDataSource Name:=.
mais rien ne se passe.

Qu'est-ce qui manque pour que ça fonctionne ?

Merci d'avance à qui me mettra sur la voie.

Jac
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
heureux-oli
Le #1765447
Bonjour,

MailMerge s'applique à un document, si j'ai bien lu ton code, tu applique à
l'application.

Dim wApp as Word.Application
Dim oDoc as Word.Document

Set wApp = GetObject(,"Word.Application")
Set oDoc = wApp.Documents.Open (" c: .......")
oDoc.MailMerge.OpenDataSource Name:
Petite précision, Add et Open n'ont pas vraiment le même effet.

Add est prévu pour être utilisé avec un modèle *.dot et va créer un nouveau
document vide basé sur ce modèle.

Open va ouvrir un document et peut être utilisé sur un *.doc et *.dot.

Le résultat semble pareil, mais il ne l'est pas totalement.


--
Heureux-oli
http://heureuxoli.developpez.com/

----------------------------------------------------------------------------------

"Jac"
Bonjour à tous,

j'ai un document Word avec des champs de fusion qui s'appuie sur un
fichier Excel.

Quand j'ouvre le document Word par double click, un message m'annonce que
les "données de ma base de données seront placées dans le document...". Je
valide et le doc se met à jour des données actuelles d'Excel.

Dans un fichier Excel, une macro me fait faire une sélection de fiche et
renplace le fichier cible de mon publipostage puis ouvre, mon *.doc afin
d'afficher mon publipostage. L'ouverture de Word est correctement
paramétrée. Le doc est ouvert par
...
Set Dc = Wd.Documents.Open("c:LA_FICHE.doc")
ou par
Set Dc = Wd.Documents.Add("c:LA_FICHE.doc")
ce qui donne le même résultat.

Mais, le problème, c'est que le fichier est ouvert sans le lien vers mon
fichier de données, les champs de fusion étant bien présent.

J'ai récupéré dans Word et adapté dans Excel le vba de l'attachement à la
source :
Wd.MailMerge.OpenDataSource Name:=.......
mais rien ne se passe.

Qu'est-ce qui manque pour que ça fonctionne ?

Merci d'avance à qui me mettra sur la voie.

Jac



Publicité
Poster une réponse
Anonyme