Rétablir lien de fusion - Word 2003?

Le
butch
Bonjour,

Dans Word 2003, j'ai créé un document type et un fichier de données (à
partir de Word) pour créer un publipostage. Le tout fonctionne
correctement mais.!

J'ai dû modifier l'emplacement (le dossier) où le fichier type et la source
de données de "type" .mdb, créée par Word, étaient tous deux stockés. Lors de
la réouverture du fichier type, Word 2003 m'oblige à passer à travers
quelques étapes afin que je "lui indique" où se trouve la source de données
rattachée à mon fichier type.

De mémoire, (et à moins que je ne fasse erreur), dans les versions
précédentes de Word il était possible de déplacer les 2 fichiers (le doc type
et la source de données type Word) sans que cela n'oblige à recréer le lien
entre les 2 fichiers.

Donc, existe-t-il une procédure (ou option) dans Word 2003 permettant de
déplacer les 2 fichiers nécessaires à une fusion sans qu'il ne soit
nécessaire de refaire le lien entre les 2 à chaque ouverture du fichier type?

--
Merci pour votre aide :-)
Butch

P.-S: Pour écrire à mon adresse personnelle S.V.P. enlever "nospam_" devant
celle-ci.
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
Anacoluthe
Le #1619043
Bonjour !

'butch' nous a écrit ...
De mémoire, (et à moins que je ne fasse erreur), dans les versions
précédentes de Word il était possible de déplacer les 2 fichiers (le doc type
et la source de données type Word) sans que cela n'oblige à recréer le lien
entre les 2 fichiers.
Donc, existe-t-il une procédure (ou option) dans Word 2003 permettant de
déplacer les 2 fichiers nécessaires à une fusion sans qu'il ne soit
nécessaire de refaire le lien entre les 2 à chaque ouverture du fichier type?


Vous avez raison : chemin relatif / chemin absolu

D'une façon générale Word privilégie les liaisons /relatives/
(document Word et sa feuille Excel liée peuvent être déplacés)
*SAUF* malheureusement dans le publipostage où la source liée
est conservée avec son chemin complet absolu.
Tout déplacement du document principal même si la source est
dans le même répertoire impose de rétablir la liaison :-(
Cette règle possède elle-même son exception si la source
est un tableau Word (par défaut dans les vieilles versions).

La première solution consisterait donc à revenir à un
document source Word. Ce n'est pas la meilleure solution,
un tableau Word est une médiocre base de données..

La solution habituelle est d'enregistrer le document principal
comme un document Word normal (Bouton 'Préparation du document
principal' de la barre d'outils Fusion et publipostage)
et d'y placer une macro automatique AutoOpen qui va rétablir
la liaison avec la source de données, le plus souvent dans
le même répertoire.

Ok ?

Anacoluthe
« L'ennui, avec l'absolu, c'est que quand on le quitte,
on tombe nécessairement dans le relatif. »
- Jean-Claude CLARI

butch
Le #1619035
Bonjour Anacoluthe,

Merci pour votre réponse.
Pour faire suite à votre suggestion, pourriez-vous m'indiquer comment
construire (ou une source d'informations à ce sujet) la macro AutoOpen (je ne
suis pas à l'aise en VBA!) afin d'automatiser le processus de rétablissement
du lien entre le fichier type et la base de données.
--
Merci pour votre aide :-)
Butch

P.-S: Pour écrire à mon adresse personnelle S.V.P. enlever "nospam_" devant
celle-ci.



Bonjour !

'butch' nous a écrit ...
De mémoire, (et à moins que je ne fasse erreur), dans les versions
précédentes de Word il était possible de déplacer les 2 fichiers (le doc type
et la source de données type Word) sans que cela n'oblige à recréer le lien
entre les 2 fichiers.
Donc, existe-t-il une procédure (ou option) dans Word 2003 permettant de
déplacer les 2 fichiers nécessaires à une fusion sans qu'il ne soit
nécessaire de refaire le lien entre les 2 à chaque ouverture du fichier type?


Vous avez raison : chemin relatif / chemin absolu

D'une façon générale Word privilégie les liaisons /relatives/
(document Word et sa feuille Excel liée peuvent être déplacés)
*SAUF* malheureusement dans le publipostage où la source liée
est conservée avec son chemin complet absolu.
Tout déplacement du document principal même si la source est
dans le même répertoire impose de rétablir la liaison :-(
Cette règle possède elle-même son exception si la source
est un tableau Word (par défaut dans les vieilles versions).

La première solution consisterait donc à revenir à un
document source Word. Ce n'est pas la meilleure solution,
un tableau Word est une médiocre base de données..

La solution habituelle est d'enregistrer le document principal
comme un document Word normal (Bouton 'Préparation du document
principal' de la barre d'outils Fusion et publipostage)
et d'y placer une macro automatique AutoOpen qui va rétablir
la liaison avec la source de données, le plus souvent dans
le même répertoire.

Ok ?

Anacoluthe
« L'ennui, avec l'absolu, c'est que quand on le quitte,
on tombe nécessairement dans le relatif. »
- Jean-Claude CLARI





Anacoluthe
Le #1619027
Bonjour !

'butch' nous a écrit ...
Pour faire suite à votre suggestion, pourriez-vous m'indiquer comment
construire (ou une source d'informations à ce sujet) la macro AutoOpen (je ne
suis pas à l'aise en VBA!) afin d'automatiser le processus de rétablissement
du lien entre le fichier type et la base de données.


Utilisez l'enregistreur de macros pour faire votre publipostage
puis utilisez le code propre à votre source de données pour
faire une macro AutoOpen ressemblant à ça :

' -----------------------------------------------------
Sub AutoOpen()
Dim maSource As String
maSource = ActiveDocument.Path & "monClasseur.xls"""
With ActiveDocument.MailMerge
.MainDocumentType = wdFormLetters
.OpenDataSource Name:=maSource
.Destination = wdSendToNewDocument
.DataSource.FirstRecord = wdDefaultFirstRecord
.DataSource.LastRecord = wdDefaultLastRecord
.Execute Pause:úlse
' rétablit document normal
.MainDocumentType = wdNotAMergeDocument
End With
End Sub
' -----------------------------------------------------

Cette macro automatique :
- connecte le document à la source monClasseur.xls située
dans le même répertoire que lui
- utilise un publipostage de type lettre
- exécute la fusion (tant qu'à faire une macro !)
- rétablit de document principal en type 'normal'
au cas où on souhaiterait le modifier et l'enregistrer à nouveau

La méthode .OpenDataSource est réduite ici à sa plus simple
expression : vous devez la compléter selon vos données et requêtes.

Anacoluthe
« Le temps est comme un fleuve, il ne remonte pas à sa source. »
- RIVAROL

butch
Le #1618999
Bonjour Anacoluthe,

Merci pour l'exemple de macro fourni.
--
Merci pour votre aide :-)
Butch

P.-S: Pour écrire à mon adresse personnelle S.V.P. enlever "nospam_" devant
celle-ci.



Bonjour !

'butch' nous a écrit ...
Pour faire suite à votre suggestion, pourriez-vous m'indiquer comment
construire (ou une source d'informations à ce sujet) la macro AutoOpen (je ne
suis pas à l'aise en VBA!) afin d'automatiser le processus de rétablissement
du lien entre le fichier type et la base de données.


Utilisez l'enregistreur de macros pour faire votre publipostage
puis utilisez le code propre à votre source de données pour
faire une macro AutoOpen ressemblant à ça :

' -----------------------------------------------------
Sub AutoOpen()
Dim maSource As String
maSource = ActiveDocument.Path & "monClasseur.xls"""
With ActiveDocument.MailMerge
.MainDocumentType = wdFormLetters
.OpenDataSource Name:=maSource
.Destination = wdSendToNewDocument
.DataSource.FirstRecord = wdDefaultFirstRecord
.DataSource.LastRecord = wdDefaultLastRecord
.Execute Pause:úlse
' rétablit document normal
.MainDocumentType = wdNotAMergeDocument
End With
End Sub
' -----------------------------------------------------

Cette macro automatique :
- connecte le document à la source monClasseur.xls située
dans le même répertoire que lui
- utilise un publipostage de type lettre
- exécute la fusion (tant qu'à faire une macro !)
- rétablit de document principal en type 'normal'
au cas où on souhaiterait le modifier et l'enregistrer à nouveau

La méthode .OpenDataSource est réduite ici à sa plus simple
expression : vous devez la compléter selon vos données et requêtes.

Anacoluthe
« Le temps est comme un fleuve, il ne remonte pas à sa source. »
- RIVAROL




Publicité
Poster une réponse
Anonyme