|
Publicité ' | ||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : mai 2007 Messages : 6 ![]() |
Bonjour,
Par l'intermédiaire de VB6, je transfère les contenus de Picturebox dans un document Word. Cela donne en simplifiant : Code :
Merci d'avance. |
||
|
|
00
|
|
|
#2 | ||
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 354 ![]() |
Code :
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus ! |
||
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 6 ![]() |
Ton code marche mais il me renvoie les positions des Textframe et non pas des images. J'ai besoin de la position des images afin de pouvoir placer les Textframe à côté (en fait, chaque image est commentée grâce à un textframe).
Dans l'idéal, à chaque fois que je colle une image grâce au clipboard, il faudrait que je récupère sa position Top pour pouvoir placer la Textframe correspondante au même endroit. edit : récupérer l'endroit ou l'on se trouve sur le doc serait une solution, il suffirait que je récupère cette position juste avant de coller l'image. Mais là non plus je ne vois pas comment coder ça |
|
|
00
|
|
|
#4 |
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 354 ![]() |
Tes images sont peut-être des InlineShapes.
Pourrais-tu me dire si elles sont alignées dans le texte ou si elles sont libres.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus ! |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 6 ![]() |
Les images sont dans des picturebox de l'application, je les intègre à Word grâce au Clipboard (presse-papiers, je fais un copier/coller avec Clipboard.getdata / Selection.paste), donc elles sont alignées dans le texte.
Et pour aligner les textframes que j'ajoute il me faut la position verticale des images que j'ai collées par le code. Je ne peux pas utiliser les Inlineshape, puisqu'il faut préciser une propriété Top pour les placer et on revient au problème de départ :/ La seule solution que j'ai trouvée pour placer mes Textframe au bon endroit est de récupérer la position des images que j'ajoute au fur et à mesure... sauf que je n'ai toujours pas trouvé comment faire. |
|
|
00
|
|
|
#6 |
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 354 ![]() |
C'est un peu bizarre, si elles sont alignées dans le texte, ce sont des InlineShapes
Pourrais-tu mettre un exemple sur le forum ?
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus ! |
|
|
00
|
|
|
#7 | ||
|
Invité de passage
![]() Inscription : mai 2007 Messages : 6 ![]() |
Au temps pour moi je croyais que les Inlineshape étaient les images libres non intégrées au texte.
Concernant l'exemple : Dans une boucle j'ai Code :
Et j'étais parti sur l'idée que comme l'image est toujours ajoutée au bon endroit, la solution est de récupérer sa position verticale (top). Comme cela on peut placer la Textframe à la même hauteur que l'image correspondante. Mais l'objet Inlineshape n'a pas de propriété top... Autre solution envisageable : récupérer la position du curseur de word juste avant le copier/coller d'une image mais je n'ai pas trouvé comment faire (et j'imagine que lui non plus n'a pas de propriété Top). Comme les images peuvent se situer n'importe où dans le document (car quasiment tout le texte est variable, mon programme est une génération automatique de rapport), je ne vois pas d'autre solution pour pouvoir placer ces satanés Textframes. En résumé la position des Textframes dépend uniquement de celle des images. Voilà j'espère que cette fois j'ai été clair :p Et merci pour l'aide. EDIT : raah j'ai enfin trouvé Selection.Information(wdVerticalPositionRelativeToPage) me permet de trouver la position dans le document Word, si je récupère cette valeur juste avant de coller l'image ça me donne sa position. Mes textframes s'alignent enfin avec les images. Dernier problème : je suis obligé de rendre le document Word visible pendant le traitement sinon Selection.Information me renvoie des valeurs erronées. |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com