- ベストアンサー
ExcelVBAで画像の貼り付けと削除
- ExcelVBAを使って画像をシートに貼り付けたり、張り付いた画像を削除する方法について教えてください。
- マクロの自動記録機能を使って画像の貼り付けと削除を行っているのですが、カウントアップされる数値について不安があります。
- また、「画像ファイル名」とか、任意の名称で画像を指定することはできないのでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
マクロ記録をとるときに、名前も付けてやればコードができあがります。 名前の付け方は、シートの名前ボックス(左上の"図1"とか出てるところ)をクリックして、名前を入力。 ●挿入 ActiveSheet.Pictures.Insert(画像ファイル名).Select Selection.Name = "屋久島" ●削除 ActiveSheet.Shapes("屋久島").Delete 以上です。
その他の回答 (1)
- myRange
- ベストアンサー率71% (339/472)
回答1、myRangeです。 12時ちょと過ぎに再質問の回答したのですが反映されないみたいなので再回答。 反映されてない回答はコードで確認するのものでしたので、今回はより簡単に手動で確認する方法を。 ●Cutは切り取りですから、 その切り取ったものをどこかに貼り付けするのが前提になるので 切り取ったものは貼り付けのためにクリップボード(メモリ)の中に保存されます ●Deleteは削除ですから完全になくなる。 確認のために以下を試してください。(全て手動でやります) 先ず、新しいブックのシートに、画像を2つ挿入しておきます。 ------------------------------------------------------- ●Delete 画像をひとつ選択 > Deleteキーを押して削除 > 任意のセルを選択 > 右クリック 表示されるメニューの「貼り付け」コマンドが グレーアウトして用禁止状態になる ------------------------------------------------------ ●Cut 別の画像を選択 > 右クリック > 切り取り >任意のセルを選択 > 右クリック 表示されるメニューの「貼り付け」コマンドが 使用できる状態になっている ---------------------------------------------------- 但し、Cutをテストした後、Deleteをテストすると Cutで切り取ったののがクリップボードに残っているのでそれが貼り付けられる 以上です。
お礼
ありがとうございます。 理解できました。
お礼
ありがとうございます。 できました。 DeleteとCutの違いはなにかお教えいただけませんか。 ActiveSheet.Shapes("屋久島").Delete でも ActiveSheet.Shapes("屋久島").Cut でも、貼り付けた画像は消えるのですが、なにか違いがあるのでしょうか?