dimensionner la fenetre excel dans word

Le
Manu91
Bonjour,

Je souhaite pouvoir incorporer, par code, un fichier excel dans un document
Word (word pour la qualité de la mise en page, et excel pour les capacités de
calcul).
L'insertion se passe tres bien avec l'objet ole, mais je suis incapable
de dimensionner la fenêtre excel pour cacher certaines formules,
Effectivement, la propriété Height s'applique sur l'objet image et applique
une espèce de fonction zoom à cet objet, alors que je souhaite pouvoir
demander l'affichage des cellules ("A1","F9") par exemple

Je ne sais pas si je me suis bien fait comprendre, n'hésitez pas à me
demander des détails

Manuel
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 3
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Circé
Le #1684713
Bonjour Manu91

Manu91 a exposé le 04/09/2007 :
Bonjour,

Je souhaite pouvoir incorporer, par code, un fichier excel dans un document
Word (word pour la qualité de la mise en page, et excel pour les capacités de
calcul).


Bonne idée ! ;)

L'insertion se passe tres bien avec l'objet ole, mais... je suis incapable
de dimensionner la fenêtre excel pour cacher certaines formules,
Effectivement, la propriété Height s'applique sur l'objet image et applique
une espèce de fonction zoom à cet objet, alors que je souhaite pouvoir
demander l'affichage des cellules ("A1","F9") par exemple...


Pour n'afficher qu'une partie de ta feuille Excel, il faut que ta
fenêtre Excel dans Word soit active.
Donc, tu double cliques dans ton tableau Excel, et ensuite tu peux
utiliser les poignées pour agrandir ou rétrécir la portion de feuille.

Une autre solution est de créer directement ton tableau dans Excel, de
copier la ou les cellules qui t'intéressent, et de faire un collage
spécial (feuille MS Excel) dans Word.

J'attire quand même ton attention sur la chose suivante : incorporer
une feuille Excel dans un document Word revient à incorporer TOUT le
classeur, même si seulement une petite partie est visible. Donc, s'il
s'agit d'envoyer le fichier à des correspondants, pense bien à cela.
Le correspondant pourra facilement accéder à tout le classeur.

Circé
http://faqword.free.fr


Je ne sais pas si je me suis bien fait comprendre, n'hésitez pas à me
demander des détails...

Manuel


Manu91
Le #1684710
Effectivement, ce que tu m'écris est juste.. et manuellement c tres facile à
faire, sauf que comme le devis est automatisé, c une ligne de commande qui
doit pouvoir prendre les poignées pour redimentionner... et ça c... gratiné !!
PS: mon automatisation me transforme ensuite le document en PDF afin que je
puisse envoyer un fichier propre et protégé à mes clients sans traces de
calcul, par contre je conserve ces traces dans mon doc original, aujourd'hui
je fais l'ensemble de cette manip à la main...


Bonjour Manu91

Manu91 a exposé le 04/09/2007 :
Bonjour,

Je souhaite pouvoir incorporer, par code, un fichier excel dans un document
Word (word pour la qualité de la mise en page, et excel pour les capacités de
calcul).


Bonne idée ! ;)

L'insertion se passe tres bien avec l'objet ole, mais... je suis incapable
de dimensionner la fenêtre excel pour cacher certaines formules,
Effectivement, la propriété Height s'applique sur l'objet image et applique
une espèce de fonction zoom à cet objet, alors que je souhaite pouvoir
demander l'affichage des cellules ("A1","F9") par exemple...


Pour n'afficher qu'une partie de ta feuille Excel, il faut que ta
fenêtre Excel dans Word soit active.
Donc, tu double cliques dans ton tableau Excel, et ensuite tu peux
utiliser les poignées pour agrandir ou rétrécir la portion de feuille.

Une autre solution est de créer directement ton tableau dans Excel, de
copier la ou les cellules qui t'intéressent, et de faire un collage
spécial (feuille MS Excel) dans Word.

J'attire quand même ton attention sur la chose suivante : incorporer
une feuille Excel dans un document Word revient à incorporer TOUT le
classeur, même si seulement une petite partie est visible. Donc, s'il
s'agit d'envoyer le fichier à des correspondants, pense bien à cela.
Le correspondant pourra facilement accéder à tout le classeur.

Circé
http://faqword.free.fr


Je ne sais pas si je me suis bien fait comprendre, n'hésitez pas à me
demander des détails...

Manuel







Circé
Le #1684709
Re...

Manu91 a présenté l'énoncé suivant :
Effectivement, ce que tu m'écris est juste.. et manuellement c tres facile à
faire, sauf que comme le devis est automatisé, c une ligne de commande qui
doit pouvoir prendre les poignées pour redimentionner... et ça c... gratiné



Ah... je n'ai pas réalisé que tu cherchais une macro.
Mais est-ce toujours les mêmes cellules que tu insères dans Word ?
Parce que, à mon avis, ce n'est plus une question de
"redimensionnement" mais de savoir ce qu'on insère...

Circé


Bonjour Manu91

Manu91 a exposé le 04/09/2007 :
Bonjour,

Je souhaite pouvoir incorporer, par code, un fichier excel dans un document
Word (word pour la qualité de la mise en page, et excel pour les capacités
de calcul).


Bonne idée ! ;)

L'insertion se passe tres bien avec l'objet ole, mais... je suis incapable
de dimensionner la fenêtre excel pour cacher certaines formules,
Effectivement, la propriété Height s'applique sur l'objet image et applique
une espèce de fonction zoom à cet objet, alors que je souhaite pouvoir
demander l'affichage des cellules ("A1","F9") par exemple...


Pour n'afficher qu'une partie de ta feuille Excel, il faut que ta
fenêtre Excel dans Word soit active.
Donc, tu double cliques dans ton tableau Excel, et ensuite tu peux
utiliser les poignées pour agrandir ou rétrécir la portion de feuille.

Une autre solution est de créer directement ton tableau dans Excel, de
copier la ou les cellules qui t'intéressent, et de faire un collage
spécial (feuille MS Excel) dans Word.

J'attire quand même ton attention sur la chose suivante : incorporer
une feuille Excel dans un document Word revient à incorporer TOUT le
classeur, même si seulement une petite partie est visible. Donc, s'il
s'agit d'envoyer le fichier à des correspondants, pense bien à cela.
Le correspondant pourra facilement accéder à tout le classeur.

Circé
http://faqword.free.fr


Je ne sais pas si je me suis bien fait comprendre, n'hésitez pas à me
demander des détails...

Manuel









Manu91
Le #1684708
non, ce ne sont pas toujours les memes cellules, leur nombre varie en
fonction du nombre de produits, pour tout te dire, et être plus complet, je
programme en VB2005, je crèe grace à une base de données un fichier excel, et
ensuite ce dernier je l'incorpore dans word, c aujourd'hui ce que je fais à
la main.
j'ai voulu être simple dans ma demande, car si je parviens à trouver la
solution pour bouger la poignée de ma fenêtre excel grâce à une macro word,
je n'aurais aucune difficultée à la transposer en VB2005.
Dans mon programme, lorsque je colle le fichier excel dans word sur un
signet préétabli, il dimensionne la fenêtre automatiquement en fonction de
l'ensemble des cases remplies (y compris les cellules de calcul perso (tx de
remise etc...)
et je ne parviens pas à reprendre la main sur cette fenêtre... j'écume les
forums VB depuis 1 semaine sans résultat, j'ai meme cherché du coté des API,
mais la c chaud parce que la fenêtre excel n'a pas de nom, donc difficile de
trouver son handle (en tous cas pas a la portée de mes connaissances info...
:-))
en bref... je galère !!




Re...

Manu91 a présenté l'énoncé suivant :
Effectivement, ce que tu m'écris est juste.. et manuellement c tres facile à
faire, sauf que comme le devis est automatisé, c une ligne de commande qui
doit pouvoir prendre les poignées pour redimentionner... et ça c... gratiné



Ah... je n'ai pas réalisé que tu cherchais une macro.
Mais est-ce toujours les mêmes cellules que tu insères dans Word ?
Parce que, à mon avis, ce n'est plus une question de
"redimensionnement" mais de savoir ce qu'on insère...

Circé


Bonjour Manu91

Manu91 a exposé le 04/09/2007 :
Bonjour,

Je souhaite pouvoir incorporer, par code, un fichier excel dans un document
Word (word pour la qualité de la mise en page, et excel pour les capacités
de calcul).


Bonne idée ! ;)

L'insertion se passe tres bien avec l'objet ole, mais... je suis incapable
de dimensionner la fenêtre excel pour cacher certaines formules,
Effectivement, la propriété Height s'applique sur l'objet image et applique
une espèce de fonction zoom à cet objet, alors que je souhaite pouvoir
demander l'affichage des cellules ("A1","F9") par exemple...


Pour n'afficher qu'une partie de ta feuille Excel, il faut que ta
fenêtre Excel dans Word soit active.
Donc, tu double cliques dans ton tableau Excel, et ensuite tu peux
utiliser les poignées pour agrandir ou rétrécir la portion de feuille.

Une autre solution est de créer directement ton tableau dans Excel, de
copier la ou les cellules qui t'intéressent, et de faire un collage
spécial (feuille MS Excel) dans Word.

J'attire quand même ton attention sur la chose suivante : incorporer
une feuille Excel dans un document Word revient à incorporer TOUT le
classeur, même si seulement une petite partie est visible. Donc, s'il
s'agit d'envoyer le fichier à des correspondants, pense bien à cela.
Le correspondant pourra facilement accéder à tout le classeur.

Circé
http://faqword.free.fr


Je ne sais pas si je me suis bien fait comprendre, n'hésitez pas à me
demander des détails...

Manuel














Geo
Le #1705783

non, ce ne sont pas toujours les memes cellules, leur nombre varie en
fonction du nombre de produits,


Pas certain d'avoir tout suivi, mais si vous définissez dynamiquement
une Range Excel et que vous importiez cette Range uniquement dans votre
fichier Word ?

--
A+

Manu91
Le #1705762
merci pour votre réponse, mais le probleme n'est pas de copier une ou
plusieurs cellules... ça c simple, tiens pour info, je vous met dans la
foulée la ligne de commande, on sait jamais ça peut servir, attention, c une
ligne de commande VB 2005.
En fait le problème est pour redimentionner le tableau excel, chose tres
aisée manuellement (voir aide de Circé), mais tres difficile par logiciel.

lignes de commande :

Dim oWord As Object
Dim oDoc As Object
oWord = CreateObject("Word.Application")
oDoc = oWord.documents.open("C:Base devis.doc")

Dim oInlineShape As Word.InlineShape
oInlineShape =
CType(oDoc.Bookmarks("GR").range.InlineShapes.AddOLEObject(ClassType:="Excel.Sheet.8", FileName:="C:essai.xls", _
LinkToFile:úlse, DisplayAsIcon:úlse), Word.InlineShape)

oInlineShape.ScaleHeight = 70%
oInlineShape.ScaleWidth = 70%
(ces 2 dernieres lignes diminuent l'objet mais ne font aucune action sur le
nombre de cellules affichées)






non, ce ne sont pas toujours les memes cellules, leur nombre varie en
fonction du nombre de produits,


Pas certain d'avoir tout suivi, mais si vous définissez dynamiquement
une Range Excel et que vous importiez cette Range uniquement dans votre
fichier Word ?

--
A+






Geo
Le #1705760

merci pour votre réponse, mais le probleme n'est pas de copier une ou
plusieurs cellules... ça c simple, tiens pour info, je vous met dans la
foulée la ligne de commande, on sait jamais ça peut servir, attention, c une
ligne de commande VB 2005.
En fait le problème est pour redimentionner le tableau excel, chose tres
aisée manuellement (voir aide de Circé), mais tres difficile par logiciel.


Vu !
Enfin je crois :-]
Ce sont les poignées, j'avais vu ça en PowerPoint pour modifier les
dessins, il faut que je recherche.
Pi c'est pas triste autant que je me souvienne.


--
A+

Manu91
Le #1705758
une bise de ma femme (c pour donner du courage)... au premier qui trouve !!!
;-)




merci pour votre réponse, mais le probleme n'est pas de copier une ou
plusieurs cellules... ça c simple, tiens pour info, je vous met dans la
foulée la ligne de commande, on sait jamais ça peut servir, attention, c une
ligne de commande VB 2005.
En fait le problème est pour redimentionner le tableau excel, chose tres
aisée manuellement (voir aide de Circé), mais tres difficile par logiciel.


Vu !
Enfin je crois :-]
Ce sont les poignées, j'avais vu ça en PowerPoint pour modifier les
dessins, il faut que je recherche.
Pi c'est pas triste autant que je me souvienne.


--
A+






Geo
Le #1705757

une bise de ma femme (c pour donner du courage)... au premier qui trouve !!!


Elle a peur de dormir seule toute la nuit :-D

J'ai une piste, mais elle finit en cul de sac.
Si la fenêtre est une inLineShape, la transformer en Shape.
Une forme Shape a des poignées (adjustments)
que l'on peut théoriquement déplacer
copie de l'aide :
myDocument.Shapes(3).Adjustments(1) = 0.25
Mais j'ai une injureBox : permission refusée.
ça marche même pas sur un rectangle.

--
A+

Manu91
Le #1705756
tu crois pas si bien dire geo.. oui, elle a deja dormi seule la nuit
dernière, et la... elle commence à faire la gueule... 8-))

Menfin.. le shape, j'avais deja essayer... et pas trouver... lol

La j'essaye de me tourner vers les API... mais pour trouver l'handle de la
fenetre excel, c assez simpa aussi

GetForegroundWindow() devrait me donner le handle de la fenetre ouverte,
mais meme en ouvrant la fenetre excel (double click), en réalisant une ligne
vba pour me donner le handle de la fenetre excel, ben il me donne celui de
word.... :-(

la nuit porte conseil..... merci en tous les cas !!!






une bise de ma femme (c pour donner du courage)... au premier qui trouve !!!


Elle a peur de dormir seule toute la nuit :-D

J'ai une piste, mais elle finit en cul de sac.
Si la fenêtre est une inLineShape, la transformer en Shape.
Une forme Shape a des poignées (adjustments)
que l'on peut théoriquement déplacer
copie de l'aide :
myDocument.Shapes(3).Adjustments(1) = 0.25
Mais j'ai une injureBox : permission refusée.
ça marche même pas sur un rectangle.

--
A+






Publicité
Poster une réponse
Anonyme