Fusion de graphiques depuis Access (Microsoft Word)
L’un des grands avantages de l’utilisation de Microsoft Office est que les programmes de la suite fonctionnent tous ensemble. Cela ne veut pas dire qu’il n’y a pas de « bosses »
sur le chemin de la coexistence heureuse, cependant. Une telle bosse est évidente lors de l’utilisation d’une table Access comme source de données pour un publipostage Word.
Un lecteur WordTips a écrit qu’il rencontrait un problème lors de la fusion d’objets graphiques OLE d’un champ de table Access dans un document Word. Il ne pouvait tout simplement pas le faire fonctionner. Lorsque la question a été posée à nos lecteurs avisés, nous avons découvert que cela ne fonctionnait pas parce que cela ne pouvait pas. Il semble que Word utilise DDE pour communiquer avec Access et DDE est incapable de transférer des objets OLE (comme le graphique) à travers l’interface DDE. On ne sait pas du tout pourquoi Microsoft n’a pas utilisé OLE Automation à la place, ce qui aurait pu résoudre le problème.
Ce problème, en passant, n’est pas évident si vous utilisez un autre document Word comme source de données. Cela a du sens, car la cause du problème est le canal de communication DDE entre Access et Word. Le problème n’existe pas entre deux documents Word car un autre type de canal de communication est utilisé.
Puisqu’il ne peut pas y avoir de solution, il doit y avoir une solution de contournement. La solution de contournement la plus évidente consiste à ne pas utiliser Access, mais plutôt à utiliser un document Word comme source de données. Si cela n’est pas possible, vous ne pouvez tout simplement pas vous inquiéter de fusionner les graphiques, mais les mettre «en place» dans le document Word. Aucune fusion de graphiques n’est requise dans cette solution, mais elle ne fonctionne que dans les cas où le graphique est le même pour toutes les instances des données fusionnées sur une page. Si le graphique doit changer pour chaque enregistrement en cours de fusion, cela ne fonctionnera pas.
La solution de contournement la plus satisfaisante consiste peut-être à fusionner les noms de fichiers au lieu des graphiques réels. Si la table Access peut inclure les noms des fichiers graphiques au lieu des fichiers graphiques eux-mêmes, vous pouvez configurer vos champs de fusion dans le document Word pour sortir et charger le graphique pour vous.
Par exemple, disons que vous avez un champ dans la table Access avec le nom «Sig». Au moment de votre document de fusion où vous souhaitez que le graphique apparaisse, vous devez vous assurer que vous disposez des éléments suivants:
{INCLUDEPICTURE "X:\\sigs\\{ MERGEFIELD Sig}" \* MERGEFORMAT}
Notez que dans ce cas, le chemin d’accès au fichier graphique est codé en dur.
Vous pouvez tout aussi facilement supposer que le chemin fait partie du champ Sig. Lorsque vous fusionnez et imprimez, le champ \ {MERGEFIELD Sig} est remplacé par le contenu du champ Sig de la table Access (en d’autres termes, le nom de fichier) et le champ INCLUDEPICTURE oblige Word à inclure l’image (le graphique) spécifié.
WordTips est votre source pour une formation Microsoft Word rentable.
(Microsoft Word est le logiciel de traitement de texte le plus populaire au monde.) Cette astuce (673) s’applique à Microsoft Word 97, 2000, 2002 et 2003.