- PR -

C# フォーム上PictureBoxにExcelグラフを表示

投稿者投稿内容
もも
常連さん
会議室デビュー日: 2005/07/25
投稿数: 46
投稿日時: 2005-09-01 10:20
Excel.Workbook xlBook;
Excel.Worksheet xlSheet;

xlSheet = (Excel.Worksheet)xlBook.Sheets.get_Item("グラフ");

ではどうですか?
試してないので、できるかはわかりませんが・・・・
evo
会議室デビュー日: 2005/08/26
投稿数: 8
投稿日時: 2005-09-01 23:32
もも さん 何度も返答ありがとうございます。

まず、うまく行っていたと思われた xChart.Copy();
なんですが、どうもコピー自体はできているのですが、
フォーム上のpictureBoxに表示できていないことが分かりました。
申し訳ございません。
クリップボードからの受け取りができていないようです。
xChart.Copy();
IDataObject Graph = Clipboard.GetDataObject();
pictureBox.Image = (Image)Graph.GetData(DataFormats.Bitmap);
では、だめなんでしょうか?

xlSheet = (Excel.Worksheet)xlBook.Sheets.get_Item("グラフ");

は get_Item("グラフ")がよく分からず、うまく行かない状態です。

もも
常連さん
会議室デビュー日: 2005/07/25
投稿数: 46
投稿日時: 2005-09-02 09:33
ピクチャーボックスに画像を表示する処理は
http://dobon.net/vb/dotnet/graphics/getclipboardmetafile.html
を参考にしてみてください。

xChart.Copy();
では、Excelのグラフは、メタファイルとしてコピーされています。
evoさんの方法で、表示するには、グラフをビットマップとしてコピーしなければ
いけません。
それは
http://www.bcap.co.jp/hanafusa/dotnet/Excel04.htm
を参考にしてみてください。

get_Item("グラフ")
ですが、調べたらでてくるとおもいますが、
"グラフ"←の部分は、シート名です。
evo
会議室デビュー日: 2005/08/26
投稿数: 8
投稿日時: 2005-09-03 01:24
もも さん 返答ありがとうございました。
おかげさまで問題なく画像の表示はできるようになりました。

get_Item("グラフ")はシート名にしても、グラフしかないシートでは
エラー(指定されたキャストは有効ではありません。)が起きてしまいます。
もも
常連さん
会議室デビュー日: 2005/07/25
投稿数: 46
投稿日時: 2005-09-06 11:08
本当ですね・・・・・
私も試してみましたが、できませんでした。すみません。

ちょっと調べてみたのですが、
http://support.microsoft.com/default.aspx?scid=kb;ja;245089
こんな、マイクロソフトのページを見つけました。

バグなのかもしれません・・・
evo
会議室デビュー日: 2005/08/26
投稿数: 8
投稿日時: 2005-09-08 20:26
もも さん  返信ありがとうございます。


http://support.microsoft.com/default.aspx?scid=kb;ja;245089

を拝見しました。やはりできないようです。

何度も返信していただきありがとうございました。


evo
会議室デビュー日: 2005/08/26
投稿数: 8
投稿日時: 2005-09-08 20:26
もも さん  返信ありがとうございます。


http://support.microsoft.com/default.aspx?scid=kb;ja;245089

を拝見しました。やはりできないようです。

何度も返信していただきありがとうございました。


スキルアップ/キャリアアップ(JOB@IT)