|
Publicité | ||||||||||||||||||||||
|
|
#1 (permalink) | |
|
Inactif(ve)
Date d'inscription: février 2005
Localisation: 45,10 N 5,43 E
Messages: 12 495
|
Le but : Insérer les images dont les adresses se trouvent dans une base de données Excel.
Dans EXCEL : Les adresses des images doivent être introduites en tant que liens vers les fichiers image, Les séparateurs de noms de répertoires doivent comporter deux "\\" et enfin, les adresses doivent être encadrées de guillemets. Ce qui donne dans la cellule : Citation:
1 - Afficher les codes de champs Barre d'outils "Outils" -> Options -> Affichage -> Valider "Code de champs" Pour se faciliter la tâche, on peut créer une macro et lui affecter des touches de fonction -> Personnaliser -> Commandes -> Macro -> Sélectionner la macro -> Bouton "Clavier" La macro : Code :
Sub CodeChampVisiblePasVisible() if ActiveWindow.View.ShowFieldCodes then ActiveWindow.View.ShowFieldCodes = False else ActiveWindow.View.ShowFieldCodes = True Endif End Sub Donne { INCLUDEPICTURE \* MERGEFORMAT } 3 - Insertion du champ de fusion Se placer après le premier espace suivant { INCLUDEPICTURE (normalement suivi de trois espaces...) Puis -> Barre d'outils "Publipostage" -> Icône "Insérer les champs de fusion" -> sélectionner le champ "Image" de la base de données. Le champ de fusion est inséré dans le précédent, c'est à dire dans le champ Image. Donne {.INCLUDEPICTURE.{.MERGEFIELD."Champ Image".}..\*.MERGEFORMAT.} où les points figurent les espaces et "Champ Image" le nom de champ. 4 - Dévalider l'affichage des codes de champs Le message "Erreur°! Nom du fichier non spécifié." s'affiche. Normal -> la fusion n'est pas encore réalisée. 5 - Lancer la fusion 6 - Mise à jour des champs Dans la "lettre type" issue de la fusion, sélectionner tout le Texte (Ctrl + A) et frapper la touche F9. Les champs se mettent à jour, les images apparaissent ! Ou par macro Code :
Sub FusionEtMiseAjour() With ActiveDocument.MailMerge .Destination = wdSendToNewDocument .SuppressBlankLines = True With .DataSource .FirstRecord = wdDefaultFirstRecord .LastRecord = wdDefaultLastRecord End With .Execute Pause:=False End With DoEvents Selection.WholeStory 'sélectionne tout le texte de la lettre type Selection.Fields.Update 'Met les champs à jour (affiche les images) End sub Dernière modification par ouskel'n'or ; 14/09/2007 à 16h05. |
|
|
|
|
|
|
#2 (permalink) | |
|
Inactif(ve)
Date d'inscription: février 2005
Localisation: 45,10 N 5,43 E
Messages: 12 495
|
Remplace, par macro, les parties 1 à 6 du post précédent (!)
Dans le document Word, renseigner le nom du champ image Se placer dans le document principal au point d'insertion de l'image puis lancer la macro. Code :
Sub Macro() Dim NomChamp as string NomChamp = "Champ Image" InsérerChampImageEtFusion NomChamp End sub Code :
Sub InsérerChampImageEtFusion(NomDuChampImage) Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, _ PreserveFormatting:=False Selection.TypeText Text:="INCLUDEPICTURE " Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, _ PreserveFormatting:=False Selection.TypeText Text:="MERGEFIELD " & Chr(34) & NomDuChampImage & Chr(34) With ActiveDocument.MailMerge .Destination = wdSendToNewDocument .SuppressBlankLines = True .Execute Pause:=False End With Selection.WholeStory Selection.Fields.Update End Sub Citation:
Dernière modification par ouskel'n'or ; 14/09/2007 à 16h04. |
|
|
|
|
|
|
#3 (permalink) |
|
Membre du Club
![]() Date d'inscription: novembre 2008
Messages: 89
|
Bonjour,
Je tente le publipostage d'image et suis tombé sur ton post très complet. Mais je ne touche pas au but (pour info je suis sous office2007). J'ai cette ligne dans mon fichier word: Code :
{INCLUDEPICTURE { MERGEFIELD image} \* MERGEFORMAT} La fusion semble fonctionné car les autres champs apparaissent bien. Mais la fusion de l'image ne sait que me dire:"Erreur°! Nom du fichier non spécifié." ; Malgré les mises à jour par F9. As tu une idée ? nb: si j'insère le champ Code :
{INCLUDEPICTURE fille.jpg \* MERGEFORMAT} Merci d'avance. |
|
|
|
|
|
#5 (permalink) |
![]() ![]() Nom : Olivier Lebeau
Date d'inscription: février 2006
Localisation: Morlanwelz (Carnières)
Âge: 45
Messages: 13 045
|
Salut,
L'écran Word aurait été plus judicieux. http://heureuxoli.developpez.com/off...ipostage/#L6-B
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Visitez le blog Office ! |
|
|
|
|
#7 (permalink) |
![]() ![]() Nom : Olivier Lebeau
Date d'inscription: février 2006
Localisation: Morlanwelz (Carnières)
Âge: 45
Messages: 13 045
|
Salut,
Fais shift + F9 dans le champ du milieu.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Visitez le blog Office ! |
|
|
|
|
#9 (permalink) |
![]() ![]() Nom : Olivier Lebeau
Date d'inscription: février 2006
Localisation: Morlanwelz (Carnières)
Âge: 45
Messages: 13 045
|
Salut,
Le publipostage a été exécuté, tu n'est pas en mode aperçu du résultat. Je ne vois pas où se trouve l'erreur.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Visitez le blog Office ! |
|
|
|
|
#10 (permalink) |
|
Invité de passage
![]() Date d'inscription: septembre 2009
Messages: 1
|
J'essaye de faire une carte adhérent à pour mon club, et pour cela j'ai une base de donnée sous excel et je veux fusionner avec une carte type sous word
je viens de faire les différents document en suivant vos indications mais je suis sous office XP, j'ai bien fais attention au double \\ et au "" dans la feuille de calul pour l'adresse de la photo. et j'ai bien enregistré les champs. Mais lors de la fusion les autres champs pour le nom, prénom, suivent mais pas la photo, la photo reste la même. je ne comprens pas! Merci par avance pour vos réponses |
|
|
|
|
|
#11 (permalink) |
|
Membre du Club
![]() Date d'inscription: novembre 2008
Messages: 89
|
Bonjour Heureux-oli, et les autres,
Est ce que les fichiers image utilisés, les données et le .doc (joints) peuvent te permettre de voir ou j'ai fauté ? (avec une maj des chemin certainement ...) Merci d'avance, G. |
|
|
|
|
|
#12 (permalink) |
|
Nouveau membre du Club
![]() Date d'inscription: septembre 2006
Messages: 68
|
Bonjour,
J'ai exactement le même pb : des cartes d'adhérents sous Word à fusionner avec des données sur une feuille Excel dont un champ "Photo" renseigne l'adresse de fichier jpg. Précision, je suis sous MS Office 2000. En fait, cela semble fonctionner sans les "" ou les \\ dans l'adresse indiquée dans la feuille Excel, mais le code INCLUDEPICTURE inséré dans Word fonctionne à l'aperçu écran si on met une macro tel que décrite ci-dessus et qui intervient lors du passage d'un enregistrement à l'autre par les boutons de commande. Le pb, c'est quà la fusion, les macros n'interviennent pas et on a la première image pour tous les enregistrements. Merci de votre aide. |
|
|
|
|
|
#13 (permalink) | |
|
Candidat au titre de Membre du Club
![]() Date d'inscription: mars 2009
Messages: 26
|
Citation:
Ca aidera peut être ceux qui passeront par la suite. Ton problème se situe sur ton champ image dans Word : tu as oublié les guillemets qui doivent encadrer le champ MERGEFIELD image. ![]() Bon à part ça, j'ajouterai juste que : 1/Il n'est pas nécessaire de mettre des guillemets dans le chemin du fichier image sur Excel. 2/les guillemets qui encadrent le champ MERGEFIELD image, eux, sont nécessaires. 3/Privilégier la fusion vers un nouveau document. Sélectionner tout le texte (Control+A). Mettre à jour avec la touche F9. Si le document doit être sauvegarder, utiliser le commutateur \d (c'est ce que j'ai fait) pour que l'image ne soit pas stockée sur le document Word même (ainsi le fichier ne sera pas alourdi). C'est vrai qu'on peut aussi se contenter d'utiliser le bouton Aperçu des résultats (Mode publipostage symolisé par Abc) mais quand on passe à un nouvel enregistrement il faut à chaque fois faire CTRL+A puis F9 pour mettre à jour. (Je pense que c'est pour ça que beaucoup ont l'impression que l'image est identique sur toutes leurs pages...) Voilà. Si ces quelques remarques éclairent des lanternes, ce sera déjà pas mal |
|
|
|
|
|
|
#14 (permalink) |
|
Nouveau membre du Club
![]() Date d'inscription: septembre 2006
Messages: 68
|
Bonjour,
Merci pour cette réponse. Cependant, après la fusion vers un nouveau document, les x pages créées dans ce nouveau fichier ont toutes l'image qui était en aperç écran sur le fichier type. Y a-t-il un moyen pour que chaque page ait l'image qui corresponde à l'enregistrement qui la concerne ? Merci |
|
|
|
|
|
#15 (permalink) | |
|
Candidat au titre de Membre du Club
![]() Date d'inscription: mars 2009
Messages: 26
|
Bonjour,
Citation:
1/Si tout est ok au niveau de la fusion (le chemin dans la source de données excel et le champ image dans ton document word) 2/Si après avoir fusionné vers un nouveau document, tu as bien fait CTRL+A puis tout F9. Normalement tu as bien une image différente à chaque page de ton nouveau document. Si ca marche toujours pas, poste (si tu peux) une capture d'écran : -de ton champ image excel -de ton champ image (au format code de champ) word. Cordialement. |
|
|
|
|
|
|
![]() |
||
Fusion et publipostage - Insertion d'images - Liste ds Excel - VBA ou Word
|
||
| Outils de la discussion | |
|
|