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...
rien.... rien de rien.... non.... je n'arrive à rien.....
y aurait'il un génie dans la salle ?????
la nuit porte conseil..... merci en tous les cas !!!
Je vais y aller aussi. J'étais rendu du côté des OLEFormat
-- A+
Geo
rien.... rien de rien....
La forme de l'objet est verrouillée. L'accès aux poignées est refusé. On peut aller bricoler dans les feuilles Excel, réduire la fenêtre Excel mais elle se réajuste aussitôt sur la fenêtre d'origine.
Une solution de contournement serait de préparer autant de fenêtres que de format dont on a besoin et de dupliquer la bonne ?
-- A+
rien.... rien de rien....
La forme de l'objet est verrouillée.
L'accès aux poignées est refusé.
On peut aller bricoler dans les feuilles Excel, réduire la fenêtre
Excel mais elle se réajuste aussitôt sur la fenêtre d'origine.
Une solution de contournement serait de préparer autant de fenêtres que
de format dont on a besoin et de dupliquer la bonne ?
La forme de l'objet est verrouillée. L'accès aux poignées est refusé. On peut aller bricoler dans les feuilles Excel, réduire la fenêtre Excel mais elle se réajuste aussitôt sur la fenêtre d'origine.
Une solution de contournement serait de préparer autant de fenêtres que de format dont on a besoin et de dupliquer la bonne ?
En vba il semble que classtype et filename soient exclusifs l'un de l'autre. Soit on lui dit que l'objet du type classtype, soit que l'objet est du même type que filename.
Voici le résultat de qqs expérimentations: Il semble qu'avec FileName la taille de la fenêtre soit celle de la plage utilisée dans la feuille 1, UsedRange en quelque sorte. Donc si on remplit la case, que dis-je ? La cellule 3,4 on va insérer un tableau de 3 lignes et 4 colonnes. Si c'est la feuille 2 qui est active au moment de l'enregistrement du classeur, c'est aussi la feuille 2 qui est affichée au départ sur le document Word, quel que soit son contenu, qu'il occupe une zone plus grande ou plus petite.
Aaaah j'en vois un qui a déjà posé son crayon au fond !
Donc voici la petite rocade : Dim ils As InlineShape Set ils = Doc.InlineShapes.AddOLEObject(FileName:="F:Temptest.xls") Il suffit d'avoir un classeur par type de tableau souhaité, mais c'est bien un classeur intégré dans le document.
En vba il semble que classtype et filename soient exclusifs l'un de
l'autre.
Soit on lui dit que l'objet du type classtype,
soit que l'objet est du même type que filename.
Voici le résultat de qqs expérimentations:
Il semble qu'avec FileName la taille de la fenêtre soit celle de la
plage utilisée dans la feuille 1, UsedRange en quelque sorte.
Donc si on remplit la case, que dis-je ? La cellule 3,4
on va insérer un tableau de 3 lignes et 4 colonnes.
Si c'est la feuille 2 qui est active au moment de l'enregistrement du
classeur, c'est aussi la feuille 2 qui est affichée au départ sur le
document Word, quel que soit son contenu, qu'il occupe une zone plus
grande ou plus petite.
Aaaah j'en vois un qui a déjà posé son crayon au fond !
Donc voici la petite rocade :
Dim ils As InlineShape
Set ils = Doc.InlineShapes.AddOLEObject(FileName:="F:\Temp\test.xls")
Il suffit d'avoir un classeur par type de tableau souhaité, mais c'est
bien un classeur intégré dans le document.
En vba il semble que classtype et filename soient exclusifs l'un de l'autre. Soit on lui dit que l'objet du type classtype, soit que l'objet est du même type que filename.
Voici le résultat de qqs expérimentations: Il semble qu'avec FileName la taille de la fenêtre soit celle de la plage utilisée dans la feuille 1, UsedRange en quelque sorte. Donc si on remplit la case, que dis-je ? La cellule 3,4 on va insérer un tableau de 3 lignes et 4 colonnes. Si c'est la feuille 2 qui est active au moment de l'enregistrement du classeur, c'est aussi la feuille 2 qui est affichée au départ sur le document Word, quel que soit son contenu, qu'il occupe une zone plus grande ou plus petite.
Aaaah j'en vois un qui a déjà posé son crayon au fond !
Donc voici la petite rocade : Dim ils As InlineShape Set ils = Doc.InlineShapes.AddOLEObject(FileName:="F:Temptest.xls") Il suffit d'avoir un classeur par type de tableau souhaité, mais c'est bien un classeur intégré dans le document.
-- A+
Manu91
Après une longue réfléxion, une longue méditation, et de nombreuses lectures de ta réponse... ;-) Je te confirme... que tu es arrivé à la même conclusion que moi !!!
Sérieusement, encore une fois merci de te pencher sur ce problème... c de l'humour ne le prends pas mal...
La solution que tu me propose ne peux convenir, effectivement, je te rappelle que si je veux changer la taille du tableau c pour cacher mes cellules de calcul (cellules ou j'indique le montant de la remise consentie), Mon tableau visible est par exemple Range ("A1","F10"), mes cellules de remise référentes étant en G1 et H1. - je sais... je suis ch..ant... lol -
Pour information, j'ai pioché du coté des API : J'ai utilisé 3 API pour trouver la fenêtre excel : EnumWindows : me permettant d'avoir la liste des fenêtres GetWindowText : la référence des fenêtres Je cherche ma fenêtre word et je fais alors : EnumChildWindows : liste des fenêtres filles SetWindowPos : modification de la position et de la taille de la fenêtre
hé bé... ça marche pas ! J'ai appris plein de choses mais je dimensionne la fenêtre objet et non la fenêtre excel... comme d'hab... je continue malgré tout a creuser dans ce sens la... je n'imagine pas qu'il n'y ai pas une solution.. si on peut le faire à la main... on doit pouvoir le faire par programme...
En vba il semble que classtype et filename soient exclusifs l'un de l'autre. Soit on lui dit que l'objet du type classtype, soit que l'objet est du même type que filename.
Voici le résultat de qqs expérimentations: Il semble qu'avec FileName la taille de la fenêtre soit celle de la plage utilisée dans la feuille 1, UsedRange en quelque sorte. Donc si on remplit la case, que dis-je ? La cellule 3,4 on va insérer un tableau de 3 lignes et 4 colonnes. Si c'est la feuille 2 qui est active au moment de l'enregistrement du classeur, c'est aussi la feuille 2 qui est affichée au départ sur le document Word, quel que soit son contenu, qu'il occupe une zone plus grande ou plus petite.
Aaaah j'en vois un qui a déjà posé son crayon au fond !
Donc voici la petite rocade : Dim ils As InlineShape Set ils = Doc.InlineShapes.AddOLEObject(FileName:="F:Temptest.xls") Il suffit d'avoir un classeur par type de tableau souhaité, mais c'est bien un classeur intégré dans le document.
-- A+
Après une longue réfléxion, une longue méditation, et de nombreuses lectures
de ta réponse... ;-)
Je te confirme... que tu es arrivé à la même conclusion que moi !!!
Sérieusement, encore une fois merci de te pencher sur ce problème... c de
l'humour ne le prends pas mal...
La solution que tu me propose ne peux convenir, effectivement, je te
rappelle que si je veux changer la taille du tableau c pour cacher mes
cellules de calcul (cellules ou j'indique le montant de la remise consentie),
Mon tableau visible est par exemple Range ("A1","F10"), mes cellules de
remise référentes étant en G1 et H1.
- je sais... je suis ch..ant... lol -
Pour information, j'ai pioché du coté des API :
J'ai utilisé 3 API pour trouver la fenêtre excel :
EnumWindows : me permettant d'avoir la liste des fenêtres
GetWindowText : la référence des fenêtres
Je cherche ma fenêtre word et je fais alors :
EnumChildWindows : liste des fenêtres filles
SetWindowPos : modification de la position et de la taille de la fenêtre
hé bé... ça marche pas !
J'ai appris plein de choses mais je dimensionne la fenêtre objet et non la
fenêtre excel... comme d'hab... je continue malgré tout a creuser dans ce
sens la... je n'imagine pas qu'il n'y ai pas une solution.. si on peut le
faire à la main... on doit pouvoir le faire par programme...
En vba il semble que classtype et filename soient exclusifs l'un de
l'autre.
Soit on lui dit que l'objet du type classtype,
soit que l'objet est du même type que filename.
Voici le résultat de qqs expérimentations:
Il semble qu'avec FileName la taille de la fenêtre soit celle de la
plage utilisée dans la feuille 1, UsedRange en quelque sorte.
Donc si on remplit la case, que dis-je ? La cellule 3,4
on va insérer un tableau de 3 lignes et 4 colonnes.
Si c'est la feuille 2 qui est active au moment de l'enregistrement du
classeur, c'est aussi la feuille 2 qui est affichée au départ sur le
document Word, quel que soit son contenu, qu'il occupe une zone plus
grande ou plus petite.
Aaaah j'en vois un qui a déjà posé son crayon au fond !
Donc voici la petite rocade :
Dim ils As InlineShape
Set ils = Doc.InlineShapes.AddOLEObject(FileName:="F:\Temp\test.xls")
Il suffit d'avoir un classeur par type de tableau souhaité, mais c'est
bien un classeur intégré dans le document.
Après une longue réfléxion, une longue méditation, et de nombreuses lectures de ta réponse... ;-) Je te confirme... que tu es arrivé à la même conclusion que moi !!!
Sérieusement, encore une fois merci de te pencher sur ce problème... c de l'humour ne le prends pas mal...
La solution que tu me propose ne peux convenir, effectivement, je te rappelle que si je veux changer la taille du tableau c pour cacher mes cellules de calcul (cellules ou j'indique le montant de la remise consentie), Mon tableau visible est par exemple Range ("A1","F10"), mes cellules de remise référentes étant en G1 et H1. - je sais... je suis ch..ant... lol -
Pour information, j'ai pioché du coté des API : J'ai utilisé 3 API pour trouver la fenêtre excel : EnumWindows : me permettant d'avoir la liste des fenêtres GetWindowText : la référence des fenêtres Je cherche ma fenêtre word et je fais alors : EnumChildWindows : liste des fenêtres filles SetWindowPos : modification de la position et de la taille de la fenêtre
hé bé... ça marche pas ! J'ai appris plein de choses mais je dimensionne la fenêtre objet et non la fenêtre excel... comme d'hab... je continue malgré tout a creuser dans ce sens la... je n'imagine pas qu'il n'y ai pas une solution.. si on peut le faire à la main... on doit pouvoir le faire par programme...
En vba il semble que classtype et filename soient exclusifs l'un de l'autre. Soit on lui dit que l'objet du type classtype, soit que l'objet est du même type que filename.
Voici le résultat de qqs expérimentations: Il semble qu'avec FileName la taille de la fenêtre soit celle de la plage utilisée dans la feuille 1, UsedRange en quelque sorte. Donc si on remplit la case, que dis-je ? La cellule 3,4 on va insérer un tableau de 3 lignes et 4 colonnes. Si c'est la feuille 2 qui est active au moment de l'enregistrement du classeur, c'est aussi la feuille 2 qui est affichée au départ sur le document Word, quel que soit son contenu, qu'il occupe une zone plus grande ou plus petite.
Aaaah j'en vois un qui a déjà posé son crayon au fond !
Donc voici la petite rocade : Dim ils As InlineShape Set ils = Doc.InlineShapes.AddOLEObject(FileName:="F:Temptest.xls") Il suffit d'avoir un classeur par type de tableau souhaité, mais c'est bien un classeur intégré dans le document.
-- A+
Geo
La solution que tu me propose ne peux convenir, effectivement, je te rappelle que si je veux changer la taille du tableau c pour cacher mes cellules de calcul (cellules ou j'indique le montant de la remise consentie), Mon tableau visible est par exemple Range ("A1","F10"), mes cellules de remise référentes étant en G1 et H1.
Sauf erreur de ma part, mais c'est vrai qu'on a un peu de mal à prendre du recul avec les mains dans le cambouis : On crée un classeur de calcul avec Excel, normal quoi, même si c'est piloté. Dans la feuille 1 : les calculs de a1 à f10 Les calculs sont faits avec des cellules qui sont sur la feuille 2. Se repositionner sur la feuille 1 et fermer Excel. En important le classeur sous forme d'objet OLE, il n'y a que la plage a1 à f10 qui s'insère, et c'est bien tout le classeur qui est intégré. On peut donc modifier des données sur la partie visible.
Pour information, j'ai pioché du coté des API : J'ai utilisé 3 API pour trouver la fenêtre excel : EnumWindows : me permettant d'avoir la liste des fenêtres GetWindowText : la référence des fenêtres Je cherche ma fenêtre word et je fais alors : EnumChildWindows : liste des fenêtres filles SetWindowPos : modification de la position et de la taille de la fenêtre
Effectivement, j'ai trouvé comment réduire la fenêtre dans Excel en passant par l'objet, on voit la fenêtre se réduire mais revenir immédiatement à la taille d'origine. Le problème que je n'arrive pas à résoudre c'est dans Word ou dans Excel?
L'article : http://support.microsoft.com/kb/242243/en-us dit (vers les 3/4, en fin d'un paragraphe)
"The editing window cannot be programmatically altered from Visual Basic." Reste à savoir si "The editing window" est bien la fenêtre qui nous intéresse.
Ou alors regarder s'il y a une solution par DDE ?
-- A+
La solution que tu me propose ne peux convenir, effectivement, je te
rappelle que si je veux changer la taille du tableau c pour cacher mes
cellules de calcul (cellules ou j'indique le montant de la remise consentie),
Mon tableau visible est par exemple Range ("A1","F10"), mes cellules de
remise référentes étant en G1 et H1.
Sauf erreur de ma part, mais c'est vrai qu'on a un peu de mal à prendre
du recul avec les mains dans le cambouis :
On crée un classeur de calcul avec Excel, normal quoi, même si c'est
piloté.
Dans la feuille 1 : les calculs de a1 à f10
Les calculs sont faits avec des cellules qui sont sur la feuille 2.
Se repositionner sur la feuille 1 et fermer Excel.
En important le classeur sous forme d'objet OLE, il n'y a que la plage
a1 à f10 qui s'insère, et c'est bien tout le classeur qui est intégré.
On peut donc modifier des données sur la partie visible.
Pour information, j'ai pioché du coté des API :
J'ai utilisé 3 API pour trouver la fenêtre excel :
EnumWindows : me permettant d'avoir la liste des fenêtres
GetWindowText : la référence des fenêtres
Je cherche ma fenêtre word et je fais alors :
EnumChildWindows : liste des fenêtres filles
SetWindowPos : modification de la position et de la taille de la fenêtre
Effectivement, j'ai trouvé comment réduire la fenêtre dans Excel en
passant par l'objet, on voit la fenêtre se réduire mais revenir
immédiatement à la taille d'origine.
Le problème que je n'arrive pas à résoudre c'est dans Word ou dans
Excel?
L'article :
http://support.microsoft.com/kb/242243/en-us
dit (vers les 3/4, en fin d'un paragraphe)
"The editing window cannot be programmatically altered from Visual
Basic."
Reste à savoir si "The editing window" est bien la fenêtre qui nous
intéresse.
La solution que tu me propose ne peux convenir, effectivement, je te rappelle que si je veux changer la taille du tableau c pour cacher mes cellules de calcul (cellules ou j'indique le montant de la remise consentie), Mon tableau visible est par exemple Range ("A1","F10"), mes cellules de remise référentes étant en G1 et H1.
Sauf erreur de ma part, mais c'est vrai qu'on a un peu de mal à prendre du recul avec les mains dans le cambouis : On crée un classeur de calcul avec Excel, normal quoi, même si c'est piloté. Dans la feuille 1 : les calculs de a1 à f10 Les calculs sont faits avec des cellules qui sont sur la feuille 2. Se repositionner sur la feuille 1 et fermer Excel. En important le classeur sous forme d'objet OLE, il n'y a que la plage a1 à f10 qui s'insère, et c'est bien tout le classeur qui est intégré. On peut donc modifier des données sur la partie visible.
Pour information, j'ai pioché du coté des API : J'ai utilisé 3 API pour trouver la fenêtre excel : EnumWindows : me permettant d'avoir la liste des fenêtres GetWindowText : la référence des fenêtres Je cherche ma fenêtre word et je fais alors : EnumChildWindows : liste des fenêtres filles SetWindowPos : modification de la position et de la taille de la fenêtre
Effectivement, j'ai trouvé comment réduire la fenêtre dans Excel en passant par l'objet, on voit la fenêtre se réduire mais revenir immédiatement à la taille d'origine. Le problème que je n'arrive pas à résoudre c'est dans Word ou dans Excel?
L'article : http://support.microsoft.com/kb/242243/en-us dit (vers les 3/4, en fin d'un paragraphe)
"The editing window cannot be programmatically altered from Visual Basic." Reste à savoir si "The editing window" est bien la fenêtre qui nous intéresse.
Ou alors regarder s'il y a une solution par DDE ?
-- A+
Manu91
re-Geo...
Excellent le coup de la deuxième feuille.... les solutions les plus simples sont souvent les meilleures, j'étais resté sur l'idée que l'on ne pouvait récupéré qu'une seule feuille... je vais tester ça dès ce soir....
pour le "editing window" en fin de réponse, j'étais effectivement tomber dessus voici quelques jour, mais ce terme porte à confusion, je pense malgré tout qu'il s'agit de la fenêtre "objet" et non de la fenêtre "excel", (nommés ainsi pour plus de simplicité)
@+
La solution que tu me propose ne peux convenir, effectivement, je te rappelle que si je veux changer la taille du tableau c pour cacher mes cellules de calcul (cellules ou j'indique le montant de la remise consentie), Mon tableau visible est par exemple Range ("A1","F10"), mes cellules de remise référentes étant en G1 et H1.
Sauf erreur de ma part, mais c'est vrai qu'on a un peu de mal à prendre du recul avec les mains dans le cambouis : On crée un classeur de calcul avec Excel, normal quoi, même si c'est piloté. Dans la feuille 1 : les calculs de a1 à f10 Les calculs sont faits avec des cellules qui sont sur la feuille 2. Se repositionner sur la feuille 1 et fermer Excel. En important le classeur sous forme d'objet OLE, il n'y a que la plage a1 à f10 qui s'insère, et c'est bien tout le classeur qui est intégré. On peut donc modifier des données sur la partie visible.
Pour information, j'ai pioché du coté des API : J'ai utilisé 3 API pour trouver la fenêtre excel : EnumWindows : me permettant d'avoir la liste des fenêtres GetWindowText : la référence des fenêtres Je cherche ma fenêtre word et je fais alors : EnumChildWindows : liste des fenêtres filles SetWindowPos : modification de la position et de la taille de la fenêtre
Effectivement, j'ai trouvé comment réduire la fenêtre dans Excel en passant par l'objet, on voit la fenêtre se réduire mais revenir immédiatement à la taille d'origine. Le problème que je n'arrive pas à résoudre c'est dans Word ou dans Excel?
L'article : http://support.microsoft.com/kb/242243/en-us dit (vers les 3/4, en fin d'un paragraphe)
"The editing window cannot be programmatically altered from Visual Basic." Reste à savoir si "The editing window" est bien la fenêtre qui nous intéresse.
Ou alors regarder s'il y a une solution par DDE ?
-- A+
re-Geo...
Excellent le coup de la deuxième feuille.... les solutions les plus simples
sont souvent les meilleures, j'étais resté sur l'idée que l'on ne pouvait
récupéré qu'une seule feuille... je vais tester ça dès ce soir....
pour le "editing window" en fin de réponse, j'étais effectivement tomber
dessus voici quelques jour, mais ce terme porte à confusion, je pense malgré
tout qu'il s'agit de la fenêtre "objet" et non de la fenêtre "excel", (nommés
ainsi pour plus de simplicité)
@+
La solution que tu me propose ne peux convenir, effectivement, je te
rappelle que si je veux changer la taille du tableau c pour cacher mes
cellules de calcul (cellules ou j'indique le montant de la remise consentie),
Mon tableau visible est par exemple Range ("A1","F10"), mes cellules de
remise référentes étant en G1 et H1.
Sauf erreur de ma part, mais c'est vrai qu'on a un peu de mal à prendre
du recul avec les mains dans le cambouis :
On crée un classeur de calcul avec Excel, normal quoi, même si c'est
piloté.
Dans la feuille 1 : les calculs de a1 à f10
Les calculs sont faits avec des cellules qui sont sur la feuille 2.
Se repositionner sur la feuille 1 et fermer Excel.
En important le classeur sous forme d'objet OLE, il n'y a que la plage
a1 à f10 qui s'insère, et c'est bien tout le classeur qui est intégré.
On peut donc modifier des données sur la partie visible.
Pour information, j'ai pioché du coté des API :
J'ai utilisé 3 API pour trouver la fenêtre excel :
EnumWindows : me permettant d'avoir la liste des fenêtres
GetWindowText : la référence des fenêtres
Je cherche ma fenêtre word et je fais alors :
EnumChildWindows : liste des fenêtres filles
SetWindowPos : modification de la position et de la taille de la fenêtre
Effectivement, j'ai trouvé comment réduire la fenêtre dans Excel en
passant par l'objet, on voit la fenêtre se réduire mais revenir
immédiatement à la taille d'origine.
Le problème que je n'arrive pas à résoudre c'est dans Word ou dans
Excel?
L'article :
http://support.microsoft.com/kb/242243/en-us
dit (vers les 3/4, en fin d'un paragraphe)
"The editing window cannot be programmatically altered from Visual
Basic."
Reste à savoir si "The editing window" est bien la fenêtre qui nous
intéresse.
Excellent le coup de la deuxième feuille.... les solutions les plus simples sont souvent les meilleures, j'étais resté sur l'idée que l'on ne pouvait récupéré qu'une seule feuille... je vais tester ça dès ce soir....
pour le "editing window" en fin de réponse, j'étais effectivement tomber dessus voici quelques jour, mais ce terme porte à confusion, je pense malgré tout qu'il s'agit de la fenêtre "objet" et non de la fenêtre "excel", (nommés ainsi pour plus de simplicité)
@+
La solution que tu me propose ne peux convenir, effectivement, je te rappelle que si je veux changer la taille du tableau c pour cacher mes cellules de calcul (cellules ou j'indique le montant de la remise consentie), Mon tableau visible est par exemple Range ("A1","F10"), mes cellules de remise référentes étant en G1 et H1.
Sauf erreur de ma part, mais c'est vrai qu'on a un peu de mal à prendre du recul avec les mains dans le cambouis : On crée un classeur de calcul avec Excel, normal quoi, même si c'est piloté. Dans la feuille 1 : les calculs de a1 à f10 Les calculs sont faits avec des cellules qui sont sur la feuille 2. Se repositionner sur la feuille 1 et fermer Excel. En important le classeur sous forme d'objet OLE, il n'y a que la plage a1 à f10 qui s'insère, et c'est bien tout le classeur qui est intégré. On peut donc modifier des données sur la partie visible.
Pour information, j'ai pioché du coté des API : J'ai utilisé 3 API pour trouver la fenêtre excel : EnumWindows : me permettant d'avoir la liste des fenêtres GetWindowText : la référence des fenêtres Je cherche ma fenêtre word et je fais alors : EnumChildWindows : liste des fenêtres filles SetWindowPos : modification de la position et de la taille de la fenêtre
Effectivement, j'ai trouvé comment réduire la fenêtre dans Excel en passant par l'objet, on voit la fenêtre se réduire mais revenir immédiatement à la taille d'origine. Le problème que je n'arrive pas à résoudre c'est dans Word ou dans Excel?
L'article : http://support.microsoft.com/kb/242243/en-us dit (vers les 3/4, en fin d'un paragraphe)
"The editing window cannot be programmatically altered from Visual Basic." Reste à savoir si "The editing window" est bien la fenêtre qui nous intéresse.
Ou alors regarder s'il y a une solution par DDE ?
-- A+
Geo
re-Geo...
Excellent le coup de la deuxième feuille.... les solutions les plus simples sont souvent les meilleures, j'étais resté sur l'idée que l'on ne pouvait récupéré qu'une seule feuille...
M'enfin, qui c'est qui voulait un classeur entier ? :-) Et les données sur les autres feuilles peuvent occuper toute la place qu'on veut, il semble que le format affiché soit calculé sur la première uniquement.
Ça ne reste qu'une solution de contournement.
pour le "editing window" en fin de réponse, j'étais effectivement tomber dessus voici quelques jour, mais ce terme porte à confusion, je pense malgré tout qu'il s'agit de la fenêtre "objet" et non de la fenêtre "excel", (nommés ainsi pour plus de simplicité)
Ça restera un mystère. Mais effectivement la forme (shape) est verrouillée.
-- A+
re-Geo...
Excellent le coup de la deuxième feuille.... les solutions les plus simples
sont souvent les meilleures, j'étais resté sur l'idée que l'on ne pouvait
récupéré qu'une seule feuille...
M'enfin, qui c'est qui voulait un classeur entier ? :-)
Et les données sur les autres feuilles peuvent occuper toute la place
qu'on veut, il semble que le format affiché soit calculé sur la
première uniquement.
Ça ne reste qu'une solution de contournement.
pour le "editing window" en fin de réponse, j'étais effectivement tomber
dessus voici quelques jour, mais ce terme porte à confusion, je pense malgré
tout qu'il s'agit de la fenêtre "objet" et non de la fenêtre "excel", (nommés
ainsi pour plus de simplicité)
Ça restera un mystère.
Mais effectivement la forme (shape) est verrouillée.
Excellent le coup de la deuxième feuille.... les solutions les plus simples sont souvent les meilleures, j'étais resté sur l'idée que l'on ne pouvait récupéré qu'une seule feuille...
M'enfin, qui c'est qui voulait un classeur entier ? :-) Et les données sur les autres feuilles peuvent occuper toute la place qu'on veut, il semble que le format affiché soit calculé sur la première uniquement.
Ça ne reste qu'une solution de contournement.
pour le "editing window" en fin de réponse, j'étais effectivement tomber dessus voici quelques jour, mais ce terme porte à confusion, je pense malgré tout qu'il s'agit de la fenêtre "objet" et non de la fenêtre "excel", (nommés ainsi pour plus de simplicité)
Ça restera un mystère. Mais effectivement la forme (shape) est verrouillée.
-- A+
Circé
Bonjour à tous les deux,
Geo a utilisé son clavier pour écrire :
re-Geo...
Excellent le coup de la deuxième feuille.... les solutions les plus simples sont souvent les meilleures, j'étais resté sur l'idée que l'on ne pouvait récupéré qu'une seule feuille...
M'enfin, qui c'est qui voulait un classeur entier ? :-) Et les données sur les autres feuilles peuvent occuper toute la place qu'on veut, il semble que le format affiché soit calculé sur la première uniquement.
Ça ne reste qu'une solution de contournement.
Mais, dans ce cas, pourquoi, dans Excel, ne pas masquer la ligne à ne pas insérer dans Word ?
Circé
Bonjour à tous les deux,
Geo a utilisé son clavier pour écrire :
re-Geo...
Excellent le coup de la deuxième feuille.... les solutions les plus simples
sont souvent les meilleures, j'étais resté sur l'idée que l'on ne pouvait
récupéré qu'une seule feuille...
M'enfin, qui c'est qui voulait un classeur entier ? :-)
Et les données sur les autres feuilles peuvent occuper toute la place qu'on
veut, il semble que le format affiché soit calculé sur la première
uniquement.
Ça ne reste qu'une solution de contournement.
Mais, dans ce cas, pourquoi, dans Excel, ne pas masquer la ligne à ne
pas insérer dans Word ?
Excellent le coup de la deuxième feuille.... les solutions les plus simples sont souvent les meilleures, j'étais resté sur l'idée que l'on ne pouvait récupéré qu'une seule feuille...
M'enfin, qui c'est qui voulait un classeur entier ? :-) Et les données sur les autres feuilles peuvent occuper toute la place qu'on veut, il semble que le format affiché soit calculé sur la première uniquement.
Ça ne reste qu'une solution de contournement.
Mais, dans ce cas, pourquoi, dans Excel, ne pas masquer la ligne à ne pas insérer dans Word ?
Circé
Anacoluthe
Bonjour Circé, Manu91, Geo et les autres !
'Circé' nous a écrit ...
Mais, dans ce cas, pourquoi, dans Excel, ne pas masquer la ligne à ne pas insérer dans Word ?
Absolument : il faut le faire dans Excel :-)
Un objet incorporé de classtype Excel doit être manipulé en vba par Excel et non par Word. On passe de l'un à l'autre ainsi :
Dim objOLE As Word.OLEFormat ' objet OLE dans WORD Dim objXL As Excel.Workbook ' Objet EXCEL
Set objOLE = ActiveDocument.InlineShapes(1).OLEFormat objOLE.Activate Set objXL = objOLE.Object
Ensuite on programme tout l'objet dans le vba d'EXCEL : With objXL.ActiveSheet .Cells(1, 1).Value = "Bonjour à EXCEL !" ... End With
Anacoluthe « Si tout ici-bas était excellent, il ny aurait plus rien dexcellent. » - Denis DIDEROT
Bonjour Circé, Manu91, Geo et les autres !
'Circé' nous a écrit ...
Mais, dans ce cas, pourquoi, dans Excel, ne pas masquer la ligne à ne
pas insérer dans Word ?
Absolument : il faut le faire dans Excel :-)
Un objet incorporé de classtype Excel doit être manipulé en vba par Excel
et non par Word. On passe de l'un à l'autre ainsi :
Dim objOLE As Word.OLEFormat ' objet OLE dans WORD
Dim objXL As Excel.Workbook ' Objet EXCEL
Set objOLE = ActiveDocument.InlineShapes(1).OLEFormat
objOLE.Activate
Set objXL = objOLE.Object
Ensuite on programme tout l'objet dans le vba d'EXCEL :
With objXL.ActiveSheet
.Cells(1, 1).Value = "Bonjour à EXCEL !"
...
End With
Anacoluthe
« Si tout ici-bas était excellent, il ny aurait plus rien dexcellent. »
- Denis DIDEROT