| 
    
     |  | ▼ET さん: 要件そのものではありませんが、以下は セル F4,F7,F10 のどれかが
 ダブルクリックされたら、図の貼り付け、
 右クリックされたら、図のリンク貼り付け
 をするサンプルコードです。
 コードは対象シートの シートモジュールに記述して使います。
 
 参考まで:
 各Eventプロシージャの中身を 各「ボタン」に移動またはCopyすれば,
 ボタンのClickで同じ処理が可能となります。
 
 '---------------------------------- Sheet モジュール
 Option Explicit
 
 '// 画像貼り付け
 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
 Dim picName
 Dim c As Range
 Set c = Intersect(Target, Range("F4,F7,F10"))
 If c Is Nothing Then Exit Sub
 Cancel = True
 picName = Application.GetOpenFilename("画像,*.jpg;*.jpeg;*.gif", , "画像選択")
 If VarType(picName) = vbBoolean Then Exit Sub
 
 Me.Shapes.AddPicture picName, _
 LinkToFile:=msoFalse, _
 SaveWithDocument:=msoTrue, _
 Left:=c.Left, Top:=c.Top, _
 Width:=c.Width, Height:=c.Height
 
 End Sub
 
 '// 図のリンク貼り付け
 Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
 Dim picName
 Dim c As Range
 Set c = Intersect(Target, Range("F4,F7,F10"))
 If c Is Nothing Then Exit Sub
 Cancel = True
 picName = Application.GetOpenFilename("画像,*.jpg;*.jpeg;*.gif", , "画像選択")
 If VarType(picName) = vbBoolean Then Exit Sub
 
 Me.Shapes.AddPicture picName, _
 LinkToFile:=msoTrue, _
 SaveWithDocument:=msoFalse, _
 Left:=c.Left, Top:=c.Top, _
 Width:=c.Width, Height:=c.Height
 
 End Sub
 
 |  |