|
Publicité | ||||||||||||||||||||||
|
|
#1 | |
|
Inactif(ve)
Date d'inscription: février 2005
Localisation: 45,10 N 5,43 E
Messages: 12 494
|
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 | |
|
Inactif(ve)
Date d'inscription: février 2005
Localisation: 45,10 N 5,43 E
Messages: 12 494
|
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 |
|
Membre du Club
![]() Date d'inscription: novembre 2008
Messages: 106
|
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. |
|
|
|
|
|
#4 |
|
Membre du Club
![]() Date d'inscription: novembre 2008
Messages: 106
|
Petite question subsidiaire: ca mazrcherai avec un .pdf au lieu de .jpg ?
|
|
|
|
|
|
#5 |
![]() ![]() Nom : Olivier Lebeau
Date d'inscription: février 2006
Localisation: Morlanwelz (Carnières)
Âge: 45
Messages: 13 270
|
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 ! |
|
|
|
|
#6 |
|
Membre du Club
![]() Date d'inscription: novembre 2008
Messages: 106
|
le voila ...
Vois tu la boulette ? |
|
|
|
|
|
#7 |
![]() ![]() Nom : Olivier Lebeau
Date d'inscription: février 2006
Localisation: Morlanwelz (Carnières)
Âge: 45
Messages: 13 270
|
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 ! |
|
|
|
|
#8 |
|
Membre du Club
![]() Date d'inscription: novembre 2008
Messages: 106
|
voila ce que ca donne
|
|
|
|
|
|
#9 |
![]() ![]() Nom : Olivier Lebeau
Date d'inscription: février 2006
Localisation: Morlanwelz (Carnières)
Âge: 45
Messages: 13 270
|
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 |
|
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 |
|
Membre du Club
![]() Date d'inscription: novembre 2008
Messages: 106
|
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 |
|
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 | |
|
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 |
|
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 | |
|
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. |
|
|
|
|
|
|
#16 |
|
Nouveau membre du Club
![]() Date d'inscription: septembre 2006
Messages: 68
|
Eh ben non!
En tout cas pas dans mon cas. J'ai pensé que ça pouvait venir du fait que j'ai mis les champs image dans une zone de texte pour pouvoir gérer plus facilement la mise en page. Mais ça ne change rien non plus. ![]() Ci-joint les copies d'écran. Merci. Dernière modification par marcb03 ; 29/12/2009 à 19h45. |
|
|
|
|
|
#17 |
|
Candidat au titre de Membre du Club
![]() Date d'inscription: mars 2009
Messages: 26
|
Re-bonjour,
Alors d'après ce que je vois y a au moins 3 soucis : 1/Sur excel : ton champ image devrait ressembler à ça : C:\\Krav Maga - Adhérents - Photo O.BARRAUD.jpg On est d'accord que si "Adhérents" est un sous dossier de Krav Maga, ton chemin sera : C:\\Krav Maga\\Adhérents\\Photo O.BARRAUD.jpg Si "Photo" est un sous dossier de Adhérents alors: C:\\Krav Maga\\Adhérents\\Photo\\O.BARRAUD.jpg Dans tous les cas, il te faut des anti-slash. Et il te manque de toute façon le chemin complet de tes images : Photos/Krav Maga - Adhérents - etc. <= ici on ne sait pas si ca se trouve sur C: ou D: etc. Donc chemin à revoir sur Excel. 2/Sur Word. a) oublie le mot clé "si alors sinon" pour le moment. Regarde déjà si sans mot clé ça fonctionne. b)ton champ include picture est incompet. Y te manque la partie mergeformat (regarde mon précédent post) qui est passée à la trappe chez toi. Voilà essaie déjà ces pistes. Cordialement. |
|
|
|
|
|
#18 |
|
Nouveau membre du Club
![]() Date d'inscription: septembre 2006
Messages: 68
|
OK.
Pour le chemin spécifié dans le fichier Excel : - L'intérêt est que le répertoire "Photos" est un sous-répertoire du répertoire dans lequel est le fichier-type Word. Donc pas besoin de redonner tt le chemin. - Et puis, en indiquant tt le chemin, si je change de lecteur (de V à C par exemple), je ne peux plus accéder à mes images. Alors que là je peux utiliser mon fichier Word ou qu'il soit (en fait une clé USB qui peut être nommée d'une lettre différente selon le PC à partir duquel j'y accède. De + le chemin tel que je l'ai spécifié dans le fichier Excel fonctionne et permet la fusion. Ce n'est donc pas le pb. Mais pour te permettre d'avancer, j'ai fait les modifs que tu m'indiques (Cf. captures d'écran ci-joint). Désolé, mais comme je m'y attendais, la fusion vers un document conserve la dernière image appelée par le document-type pour tous les enregistrements. |
|
|
|
|
|
#19 |
|
Candidat au titre de Membre du Club
![]() Date d'inscription: mars 2009
Messages: 26
|
Ok alors on va faire simple :
1/tu refais un publipostage basique : tu crées un dossier dans C: que tu appelles "publipostage". a) tu mets 2 images au choix à l'intérieur. b) Toujours à l'intérieur du dossier "publipostage", tu crées une source de données Excel (que tu nommes "SD") toute simple avec 2 champs : prénom et image. Tu remplis 2 lignes avec 2 prénoms et tu ajoutes les 2 chemins des 2 images (exactement comme tu l'as fait dans ta dernière capture d'écran). 2/tu crées un document word "lettre" et tu commences normalement ton publipostage. Utilise le champ Include Picture comme tu l'as fait pour ton vrai courrier. Si ça marche tant mieux ! Si ça marche pas, envoie tes fichiers (l'exemple basique que tu viens de créer) sur le forum. Cordialement. |
|
|
|
|
|
#20 |
![]() ![]() Nom : Olivier Lebeau
Date d'inscription: février 2006
Localisation: Morlanwelz (Carnières)
Âge: 45
Messages: 13 270
|
Salut,
Il faut rafarîchier les images par Ctrl + A pour sélectionner le contenu du document et ensuite F9 pour actualiser les champs (ce qui mettra les images à jour).
__________________
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 ! |
|
|
|
|
![]() |
||
Fusion et publipostage - Insertion d'images - Liste ds Excel - VBA ou Word
|
||
| Outils de la discussion | |
|
|