動作検証バージョン:Windows 11 Home + 64bit Excel バージョン 2506(ビルド18925.20168クイック実行)
最近のExcelでは、画像をセル内に配置できます。
ワークシート上に存在する画像を、VBAを使ってセル内に配置する方法を備忘録として残しておきます。
[スポンサードリンク]
ワークシート上の画像をセル内に配置するサンプルマクロ
ワークシート上に画像が1枚存在する状態で以下のExcelマクロを実行してください。
Sub ワークシート上の画像をセル内に配置する()
Dim shp As Shape
Set shp = ActiveSheet.Shapes(1)
shp.Select
shp.PlacePictureInCell
End Sub
Dim shp As Shape
Set shp = ActiveSheet.Shapes(1)
shp.Select
shp.PlacePictureInCell
End Sub
実行すると、画像の左上角のセルに、画像が入ります。
サンプルマクロで行っている処理
Excel.Shapeオブジェクトに用意されている、PlacePictureInCellメソッドで画像をセル内に配置できます。
事前に画像の選択が必要
ただし、注意点があります。
shp.Select
です。
この選択処理をコメントアウトした以下のコードでは、
Set shp = ActiveSheet.Shapes(1) '' shp.Select shp.PlacePictureInCell
エラーになることもなく、セル内に配置されることもありません。
ただし、上記のようにshp.Selectがコメントアウトされていても、ワークシート上の画像を事前に選択しておいてから実行した場合には、セル内に配置されます。
最終更新日時:2025-08-15 09:05
[スポンサードリンク]
- Newer:VBAでフルパスからファイル名を取得する
- Older:AI音声合成ソフト「VOICEVOX」のツールバー設定
Home » エクセルマクロ・Excel VBAの使い方 » Shapesコレクション・Shapeオブジェクト » VBAでワークシート上の画像をセル内に配置する