- ベストアンサー
エクセルVBAで形式を選択して貼付した画像を変数に
- エクセル2010でグラフを切り取り、形式を選択して貼り付ける方法について説明します。
- オブジェクト変数に画像を代入するためのSet文の書き方について解説します。
- VBAを使用して、エクセルのマクロで画像を変数に代入する手順を紹介します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
貼り付けた直後に数を数えます。 (例1) Dim objChart As ChartObject Dim shp As Shape With Sheets("Sheet1") Set objChart = .ChartObjects(1) objChart.Cut .PasteSpecial Format:="図 (拡張メタファイル)" Set shp = .Shapes(.Shapes.Count) End With MsgBox shp.name
その他の回答 (1)
- xls88
- ベストアンサー率56% (669/1189)
≫No.1 この回答へのお礼 >例1)と書かれているのを見ると。ほかにも方法があるのでしょうか? スマートとは言えませんが (例2) Dim pic As Picture With Sheets("Sheet1") .ChartObjects(1).Cut .PasteSpecial Format:="図 (拡張メタファイル)" End With If TypeName(Selection) = "Picture" Then Set pic = Selection End If MsgBox pic.name #余談 Sheets("Sheet1").PasteSpecial Format:="図 (拡張メタファイル)" としても効き目がなく ActiveSheetにPasteされるようです。 注意が必要です。
お礼
xls88 さん、なんどもありがとうございます。 貼り付けるとその画像が選択されたことになるのでSelectionを利用するわけですね。 シート名を指定してるのにActiveSheetにPasteされるのは不思議ですね。 ありがとうございました。
お礼
さっそくありがとうございます。 なるほど、貼り付けた直後ならShapeの数の最後で判定できるわけですね。 例1)と書かれているのを見ると。ほかにも方法があるのでしょうか?