Ramener des photos d’un fichier Excel dans word lors d’un publipostage
Bonjour à tous,
Je m’explique.
Dans le fichier Excel figure le prénom et nom des enfants et leur photo.
Je souhaite lors d’un publipostage, ramener nom, prénom de l’enfant ainsi que sa photo, lors de l’édition des lettres.
Je mets bien la photo dans la cellule en mettent comme propriété que l’image est rattachée à cette cellule.
Je ne récupère pas cette photo dans word. le reste est bien récupéré.
Je ne sais plus comment faire.
Auriez vous une idée ?
Excel publipostage.xlsx et word publipostage.Docx
Je joins mes deux fichiers.
Merci d’avance pour votre aide.
quelqu'un aurait il une idée pour amener une photo d'une cellule Excel vers word suite au publipostage ?
Hello,
à mon avis ça n'est pas possible.
Word attend des données textuelles une photo n'est pas une donnée et elle n'est pas considérée comme étant DANS la cellule.
Une alternative serait de mettre tout dans un tableau de Word et d'utiliser ce fichier comme source du publipostage
Dans ce cas Word reconnait le contenu de la cellule et permet de l'utiliser dans un publipostage
Bonsoir
Vous pouvez vous inspirer de cela
Pour récupérer des photos se trouvant dans un fichier Excel lors d’un publipostage sur Word, vous pouvez suivre les étapes suivantes :
Étape 1 : Préparer votre fichier Excel
- Insérez les photos dans votre fichier Excel. Assurez-vous que chaque photo est dans une cellule distincte. Chaque ligne doit contenir les données associées à chaque photo, par exemple :
- Colonne A : Nom
- Colonne B : Adresse
- Colonne C : Chemin d’accès à l’image (ex. :
C:\Images\photo1.jpg)
Étape 2 : Créer le document Word
- Ouvrez Microsoft Word et créez un nouveau document.
- Allez dans l’onglet “Mailings” (Publipostage).
- Cliquez sur “Start Mail Merge” (Démarrer le publipostage) et choisissez le type de document que vous souhaitez créer (par exemple, lettres).
Étape 3 : Sélectionner les destinataires
- Cliquez sur “Select Recipients” (Sélectionner les destinataires) puis sur “Use an Existing List” (Utiliser une liste existante).
- Naviguez jusqu’à votre fichier Excel et sélectionnez-le.
Étape 4 : Insérer des champs de fusion
- Dans le document Word, placez le curseur à l’endroit où vous voulez insérer les données de votre fichier Excel (nom, adresse, etc.).
- Cliquez sur “Insert Merge Field” (Insérer un champ de fusion) et sélectionnez les champs appropriés.
Étape 5 : Insérer les images
Pour insérer les images en fonction des chemins d’accès contenus dans votre fichier Excel, vous devez utiliser un peu de code VBA, car Word ne prend pas en charge l’insertion d’images directement par les champs de fusion.
Étape 6 : Exécuter le publipostage
- Retournez dans Word et allez dans “Finish & Merge” (Terminer et fusionner).
- Choisissez “Edit Individual Documents” (Modifier les documents individuels) pour créer un nouveau document avec toutes les entrées.
- Une fois le document créé, appuyez à nouveau sur Alt + F11 pour retourner à l’éditeur VBA et exécutez la macro
InsertPictures.
Étape 7 : Finaliser le document
- Les images devraient maintenant être insérées dans votre document. Vous pouvez les redimensionner ou les ajuster comme nécessaire.
Remarque
Assurez-vous que les chemins d’accès aux images dans votre fichier Excel sont corrects et que les images sont accessibles depuis l’ordinateur où vous effectuez le publipostage.
En suivant ces étapes, vous devriez pouvoir récupérer des photos à partir de votre fichier Excel lors d’un publipostage dans Word.
Bonjour bonjour,
@Joco Etape 5 ? Mauvaise insertion ?
Bonjour
pour compléter l'étape 5
Accéder à l’éditeur VBA dans Word :
Appuyez sur ALT + F11 pour ouvrir l’éditeur VBA.
Dans le menu, sélectionnez Insertion > Module pour créer un nouveau module.
Insérer le code VBA :
Copiez et collez le code suivant dans le module :
Sub InsererImages()
Dim doc As Document
Dim cheminImage As String
Dim i As Integer
Set doc = ActiveDocument
' Assurez-vous que le document a été fusionné avec les données d'Excel
For i = 1 To doc.Content.Fields.Count
If doc.Content.Fields(i).Type = wdFieldMergeField Then
If doc.Content.Fields(i).Code.Text = "MERGEFIELD CheminImage" Then ' Remplacez "CheminImage" par le nom de votre champ
cheminImage = doc.Content.Fields(i).Result.Text
If Dir(cheminImage) <> "" Then ' Vérifie si le chemin de l'image existe
doc.Content.Fields(i).Select
Selection.InlineShapes.AddPicture FileName:=cheminImage, LinkToFile:=False, SaveWithDocument:=True
Else
doc.Content.Fields(i).Select
Selection.TypeText "Image non trouvée" ' Message si l'image n'est pas trouvée
End If
End If
End If
Next i
End SubBonjour,
Réponse donnée sur un autre forum, et qui a pleinement satisfait le demandeur (demandeur identique)
https://www.faqword.com/index.php/word/publipostage/publimage-ou-publipostage-avec-images