プロが教えるわが家の防犯対策術!

EXCELの複数グラフシートから、PPへグラフの貼り付けを行いたいです。貼り付け形式がグラフにより、xlBitmapとxlPictureを別ける必要があるので、EXCELにグラフシート名と貼り付け形式(xlBitmapとxlPicture)の一覧を作成し参照させたいのですが、うまくFormat形式をセルから参照させることができません。定数は参照できないのでしょうか?

Selection.CopyPicture Format:=xlBitmapのxlBitmapの部分にセルの値を参照させたい。

A 回答 (3件)

はっきり意味が読み取れませんが、


定数であるxlBitmapやxlPictureは、実行時には実際の数値に変換されるのでインタープリタには、xlBitmap等の文字の実態は理解できません。
ですから、セルに Xlbitmap 等と入れておいて、
Selection.CopyPicture Format:=range("a1").value
等としても文字列のxlBitmapと指定しているに過ぎません。

セルには、定数の実数値である
  xlbitmapなら 2
  Xlpictureばら、-4147
(これは、オブジェクトブラウザーで調べるとわかります)
を指定すれば、上記のコードもうまくいくと思いますよ!!
あるいは、この関係をIF文で分岐制御するなり、
名前の定義を使って工夫するなり等の方法は考えられますが・・・。

検討してみてください。
    • good
    • 0
この回答へのお礼

lark_0925さん回答ありがとうございます。
まさしくSelection.CopyPicture Format:=range("a1").value
と言う感じで指定していました。
  xlbitmapなら 2
  Xlpictureばら、-4147
とすることで実行できました。
おかげさまで解決いたしました。感謝!!

お礼日時:2008/02/02 21:44

定数の実際の数字は


xlBitmap=2
xlPicture=-4147
です。
ですので Selection.CopyPicture Format:=Range("E13") などとして、E13のセルに 2 を入力しておけば、Selection.CopyPicture Format:=xlBitmap と同じことになります。

他の定数も Range("E13") = xlBitmap などとして、セルに表示させれば、その数字を調べることができます。
    • good
    • 0
この回答へのお礼

dokinhimeさん、dokinhime同様、適切な回答ありがとうございました。

お礼日時:2008/02/02 21:48

MsgBox xlBitmap


MsgBox xlPicture
    • good
    • 0
この回答へのお礼

hana-hana3さん回答ありがとうございます。
質問が理解しにくく申し訳ありません。
Selection.CopyPicture Format:=xlBitmap

ワークシート”マクロ”のセル”L21”にxlBitmapと記入してあり
Selection.CopyPicture Format:=Worksheets("マクロ").Range("L21").Valueと言う感じにした場合。
"PictureクラスのCopyPictureメソッドが失敗した。"とエラーになり困っております。

お礼日時:2008/02/02 21:36

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!