Publipostage direct par lien hypertexte

BOnjour a tous,

j'avais deja posté la question sur un forum mais personne n'avait vraiment reussi a me dire si ce que je voulais faire etait faisable ou pas, je vous explique,

pour le moment j'ai un fichier excel avec un lien hypertexte vers un fichier word pour faire du publipostage, c'est a dire qu'il y a des infos (par exemple nom, prenom, age...) qui vont a certains endroit d'un fichier word pour faire une lettre "personalisé"

pour le moment je suis obligé de :

cliquer sur le lien hypertexte,

faire outils, publipostage, fusion et publipostage

aller chercher mon fichier excel que je viens de faire,

faire deux fois suivant pour que les données s'inscrivent.

et je voulais savoir si il etait possible de juste cliquer sur le lien hypertexte pour ouvrir le fichier word, et que la fusion (pour le publipostage) entre le fichier word et le fichier excel en cours d'ouverture se fasse directement ?

merci d'avance !!

as-tu essayé de faire une macro Word ?

(avec l'enregistreur de macro de Word)

tous tes clics actuels ne seront pas dans la mcro, mais une bonne partie

bgrvfe

je voulais mais le probleme c'est au moment de chercher le fichier excel ACTUELLEMENT en cours.

tu vois ?

compris, mais je sèche...

-- Dim Déc 19, 2010 8:41 pm --

compris, mais je sèche...

Bonjour Mizouille,

J'ai, il y a quelques siècles maiuntenant, fait des publipostages automatiques avec excel. J'appuyais sur un bouton VBA et hop le publipostage partait seul avec les données actualisées de mon tableau excel.

Le principe est de préparer le publipostage de manière tout à fait ordinaire :

  • je fais une base de données (sur excel de préférence) ;
  • je fais ma lettre type (format DOT pour modèle) sur word ;
  • je relie les deux fichiers par la fonction publipostage avec recherche des champs à positionner correctement dans la lettre type.
A ce stade, j'avais deux fichiers et... un lien entre les deux.

Alors, un fois tout cela enregistré puis fermé, le simple fait d'ouvrir le fichier word (la lettre type) activait aussi les données et le lien. Ainsi une simple commande d'ouverture de fichier word dans excel activait le publipostage.

.Documents.Add Template:= _

"\\bdcpref10\....\DLPAJ\BFL\.......\FC_communautés.dot" _

, NewTemplate:=False, DocumentType:=0

Au plaisir.

Captain SOLO

aaahhhh c'est trééééés intéressant ce que tu me racontes la !!

Pour le moment on a fait exactement pareil (sauf que je ne sais pas ce qu'est un format DOT)

Je t'ai bien suivi jusqu'a :

A ce stade, j'avais deux fichiers et... un lien entre les deux.

et ensuite que dois je faire ? que veut dire ta formule ?

je crois que l'on est sur la bonne voie lol

Bonjour Mizouille,

"Documents.Add Template:= " est une ligne de commande qui permet d'ouvrir un fichier word depuis VBA (VBA excel en l'occurence). après le signe "=" de la ligne de commande, il faut indiquer le chemin à VBA où trouver le fameux fichier word modèle avec extension DOT. Le lien entre le fichier DOT et les données excel étant sauvegardé lors de l'enregistrement des fichiers, le publipostage est actif.

Petite astuce : pour que les données excel ajoutées dans le tableau, jour après jour, soient prises en compte dans le publipostage, il faut ajouter les lignes par insertions en ligne 2 juste après les entêtes (champs).

Ceci dit...

Une ligne de commande c'est bien mais il faut la lancer la commande. Alors fait un bouton dans ton fichier excel. Colle la ligne de commande à ce bouton et le publipostage s'effectuera lorsque tu cliqueras sur le bouton.

Bon courage.

Au plaisir.

Captain_SOLO

alors si je comprends bien:

1) j'enregistre mon fichier word en .dot

2) je fais un bouton vba dans excel et je lui copie/colle ce code:

Sub Bouton1_QuandClic()
Documents.Add Template:=C:\Documents and Settings\Raphael\Application Data\Microsoft\Modèles\report.dot
End Sub

Mais ça ne marche pas :s

ps: comment ca marche et qu'est ce que c'est en fait un .dot ?!

Sorry Mizouille, je ne suis pas très disponible en ce moment... Mais je vais essayer de te tirer d'affaire...

Oui, la commade du bouton semble être la bonne... Tu as saisi le principe.

Mais, la difficulté porte plus sur la création d'un modèle apparemment pour toi.

Allons-y par étape, tu dois :

  • 1 Créer ton fichier de données (excel) avec les entêtes qui correspondent aux noms des champs
  • 2 Faire la lettre word
  • 3 relier (publipostage) la lettre et les données
  • 4 enregistrer la lettre en modèle word (extension dot).
  • 5 copier le chemin pour retrouver la lettre (avec extension dot)
  • 6 coller le chemin dans la ligne de commande du bouton (après Document.Add Template:=)

Dis-moi où tu en es dans les étapes.

S'il le faut, je te ferai un exemple mais là, aujourd'hui, je suis un peu pris par le temps.

Courage!

Au plaisir.

Captain_SOLO

Excuse moi Captain_Solo pour le retard, mais voici ce que tu m'as demandé:

j'ai tout bien fait, le publipostage marche trés bien d'un fichier a l'autre, et j'ai enregistrer le *.dot ici:

Documents.Add Template:=C:\Documents and Settings\Raphael\Application Data\Microsoft\Modèles\report.dot

que dois je faire dorénavant ?

Bonjour Mizouille,

OK, on est sur la bonne voie !

dans ton fichier excel, tu créé un bouton avec le menu VBA.

Tu actives le mode création bouton avec l'équerre, le crayon et la règle.

Tu cliques deux fois sur le bouton que tu viens de créer pour aller dans la module VBA. Tu seras dans les lignes de commandes de ton bouton (ça c'est magique !).

tu n'as plus qu'à coller ta ligne de commande (celle que tu mets dans ton message) entre le sub et le end sub.

Tu reviens dans la feuille excel. Tu retires le mode création et tu cliques sur le bouton.

Je croise les doigts !

Dis-moi si c'est OK.

A plus.

Captain SOLO

non ca ne marche pas,

j'ai mis ca :

Sub Bouton2_QuandClic()
Documents.Add Template:=C:\Documents and Settings\Raphael\Application Data\Microsoft\Modèles\report.dot
End Sub

et ça me met: éerreur de syntaxe" et ca me met la premiere ligne surligné en jaune !!

Rechercher des sujets similaires à "publipostage direct lien hypertexte"