• 締切済み

ExcelVBA上で特定の座標への画像添付

ExcelVBAのプログラミングに関する質問です。 ExcelVBA上で特定の座標に任意の画像ファイル(例えばjpegなど)をはりつけるには、具体的にどの様にプログラムを記入すれば良いでしょうか? また、複数の座標の中から一定時間ごとに順々に画像を貼り付けたいと考えております。 その場合、ある座標に画像が添付された後に、他の座標に画像ファイルを貼り付けるという作業が必要になると思います。 その中で、前に貼り付けた画像を消すことが必要になると考えます。 ExcelVBA上で任意の画像を特定の座標に添付する方法と、貼り付けた画像を消す方法を教えていただきたいと考えております。 よろしくお願いいたします。

みんなの回答

  • kybo
  • ベストアンサー率53% (349/647)
回答No.1

Jpgファイル選択ダイアログを表示し、X=100、Y=100、400×300のサイズで画像を挿入する例です。 Sub macro1() Dim P As Variant P = Application.GetOpenFilename("画像ファイル (*.jpg), *.jpg") If P = False Then Exit Sub ActiveSheet.Shapes.AddPicture P, msoFalse, msoCTrue, 100, 100, 400, 300 End Sub X=100、Y=100の座標にある画像を消す例です。 Sub macro2() Dim C As Picture For Each C In ActiveSheet.Pictures If C.Left = 100 And C.Top = 100 Then C.Delete End If Next C End Sub

mathmathuunt
質問者

補足

お時間を割いて回答して頂き、ありがとう御座います! Macro1は実行できました! Macro2は「型が一致しません」といったエラーが出てきます・・。 また、Jpgファイル選択ダイアログを使わずに、パスを指定して画像を読み込みたいと考えております。 その場合はどこの部分をどの様に変えれば良いのでしょうか? 教えていただけると大変嬉しいです!

関連するQ&A