INSERER IMAGE DANS DOCUMENT WORD DEPUIS USERFORM

gmaquenhen Messages postés 5 Date d'inscription mardi 18 mars 2008 Statut Membre Dernière intervention 18 avril 2008 - 15 avril 2008 à 18:46
cs_loulou69 Messages postés 672 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 2 juin 2016 - 18 avril 2008 à 14:50
Bonjour,

Je suis grand débutant en VB.
J'ai créé un USERFORM qui alimente des champs dans un doc. Word. Tout fonctionne bien.
Je souhaiterais à partir du même USERFORM appeler une boîte de dialogue "insérer image" de sorte à ce que l'utilisateur puisse automatiquement choisir des images qui seront insérées dans son doc. et là je galère ...

Si une âme charitable veut bien consacrer qqes minutes de son temps pour me fournir un élément de réponse, ce serait top :)

Merci par avance !!!!

Greg

9 réponses

cs_loulou69 Messages postés 672 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 2 juin 2016 1
16 avril 2008 à 09:49
Bonjour
la boite de dialogue Ouvrir de Word , permet après avoir choisi le répertoire des images , et après choix de l'affichage Miniature de visualiser les images à insérer, il suffit d'expliquer à l'utilisateur comment faire.
0
gmaquenhen Messages postés 5 Date d'inscription mardi 18 mars 2008 Statut Membre Dernière intervention 18 avril 2008
16 avril 2008 à 09:56
Bonjour,

Merci pour la réponse.
Le recours à VBA et à un USERFORM est justement fait pour éviter ceci :) ... beaucoup de personnes travaillent sur ce document et les rotations de personnes sont tout aussi nombreuses.

Dans l'idée, les utilisateurs ne touchent pas à Word ... le formulaire automatise toute la procédure. Les images sont ensuite redimensionnées automatiquement et le doc. est sauvegardé en 2 formats.

Il ne me manque donc que cette étape intermédiaire ...

Merci quand même :)
0
cs_loulou69 Messages postés 672 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 2 juin 2016 1
16 avril 2008 à 10:07
-Ce qui te manque c'est de visualiser les images quelque soit leur formats .png .jpg .Jpeg .bmp .gif .wmf (ceci est très difficile)

-ou Ce qui te manque C'est d'insérer un format particulier d'une image qu'elle soit ou non prévisualisée dans ta Userform?

-Ou encore les deux à la fois
0
gmaquenhen Messages postés 5 Date d'inscription mardi 18 mars 2008 Statut Membre Dernière intervention 18 avril 2008
16 avril 2008 à 10:20
En fait, non ... dans l'absolu, je n'ai pas besoin de visualiser les images. J'ai besoin de stocker le lien temporairement.
Une fois que l'utilisateur valide le USERFORM, tout se passe automatiquement. Les images sélectionnées (format JPEG) et les textes sont insérés dans le modèle Word aux emplacements désignés par les signets.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_loulou69 Messages postés 672 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 2 juin 2016 1
16 avril 2008 à 10:21
Je n'ai pas fait en VBA mais en VB voilà comment je m'y prend

Afficher les images avec
Image1.Picture= LoadPicture (NomdeFichierDeLimage)

avant validation de la selection

Sur la selection de l'image faire, la copier dans le presse papier
Clipboard.SetData Picture1.Picture, 2

Puis sur validation avant de retourner dans Word , il faudrait disposer  du handle de la fenetre d'édition de  Word
et faire
Const WM_PASTE =&H302
SendMessage hwnd, WM_PASTE, 0, Clipboard.GetData

désolé c'est incomplet et non testé
0
gmaquenhen Messages postés 5 Date d'inscription mardi 18 mars 2008 Statut Membre Dernière intervention 18 avril 2008
16 avril 2008 à 10:25
Pas de problème ... merci déjà de te pencher sur mon cas.
Je vais tenter qqe chose avec ça.
0
cs_loulou69 Messages postés 672 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 2 juin 2016 1
16 avril 2008 à 10:26
Dans Word , l'enregistrement de "Insérer/ Champ / IncludePicture" donne ce code si MaBmp.BMP est l'image séléctionnée

Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, Text:= _
        "INCLUDEPICTURE  ""maBmp.bmp""", PreserveFormatting:=True
0
gmaquenhen Messages postés 5 Date d'inscription mardi 18 mars 2008 Statut Membre Dernière intervention 18 avril 2008
18 avril 2008 à 13:25
Bonjour,
Juste pour informer que je suis presque parvenu à mes fins :) avec le bout de code ci-dessous :

Private Sub CommandButton3_Click()

Dim I1 As String

Selection.GoTo What:=wdGoToBookmark, Name:="IMAGE1"

Application.Dialogs(wdDialogInsertPicture).Show 'Ouvrir la boîte de dialogue insérer image

RemplirSignet "IMAGE1", I1 'Placer les données dans le document

ActiveDocument.Fields.Update ' MAJ des champs

End Sub

-------------------
Mon seul problème à présent (quand y en a plus y en a encore ... :(( )
Si l'utilisateur veut changer une image, je souhaiterais effacer l'image précédemment insérée (comment la retrouver, vu que j'ai 5 images dans mon document et que le nom des images varie), sans effacer le signet ... ?

Merci encore une fois pour l'aide:)
0
cs_loulou69 Messages postés 672 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 2 juin 2016 1
18 avril 2008 à 14:50
tu as fait du très bon travail tout seul je ne t'ai donné que des voix à explorer
Et pour le signet , ton expérience te dit que tu dois le supprimer pour le récréer : je te donne raison
0
Rejoignez-nous