tagCANDY CGI VBレスキュー(花ちゃん) - Excel2007 CopyPicture メソッドがビットマップをコピーしない(VB.NET) - Visual Basic 6.0 VB2005 VB2010
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ
Excel2007 CopyPicture メソッドがビットマップをコピーしない(VB.NET)
元に戻る スレッド一覧へ 記事閲覧
このページ内の検索ができます。(AND 検索や OR 検索のような複数のキーワードによる検索はできません。)

Excel2007 CopyPicture メソッドがビットマップをコピーしない(VB.NET) [No.166の個別表示]
     サンプル投稿用掲示板  VB2005 〜 用トップページ  VB6.0 用 トップページ
日時: 2008/02/11 21:21
名前: 花ちゃん

***********************************************************************************
* カテゴリー:[エクセル][][]                                                  *
* キーワード:技術情報,VBA,グラフ,クリップボード,ビットマップファイル,Metafile    *
***********************************************************************************

Excel2007 の VBA の ChartObject.CopyPicture メソッドがビットマップ形式を
クリップボードにコピーしない

下記に投稿している Excelのグラフをクリップボード経由でPictureBoxに貼付 を
VB2005 Excel 2007 の環境で試していたら、画像が表示されない。

MyChart1.CopyPicture(Appearance:=Excel.XlPictureAppearance.xlScreen, _
                                Size:=Excel.XlPictureAppearance.xlScreen, _
                                Format:=Excel.XlCopyPictureFormat.xlBitmap)

http://hanatyan.sakura.ne.jp/dotnet/Excel04.htm


そこで、クリップボードに入っている Format 形式を調べてみると下記の5種類となっていた。
Preferred
DropEffect
InShellDragLoop
EnhancedMetafile
MetaFilePict

念のため、Excel 2002  Excel 2003 等で調べてみると下記のように Bitmap 形式で入っていた。
System.Drawing.Bitmap
Bitmap
DeviceIndependentBitmap
Format17
Link

検索してみたが、Microsoft のサポート技術情報等は見当たらなかったが、どうもバグの
ようである。

VB6.0 で扱った場合は、クリップボードで Metafile が扱えるから、特に問題がないのだが
.NET 系になってから、Clipboard クラスは、Metafile をサポートしなくなったのでやっかい
である。(同じ会社の製品なのに)
Win32 API 関数の厄介になる必要が出てくる。
メンテ

Page: 1 |

 投稿フォーム               スレッド一覧へ
題  名 スレッドをトップへソート
名  前
パスワード (記事メンテ時に使用)
投稿キー (投稿時 投稿キー を入力してください)
コメント

   クッキー保存   
スレッド一覧へ