|    | 
     ▼okb さん: 
こんばんは。 
 
>次のマクロで、図形の貼り付けはできるのですが、貼り付けされるシートにより 
>アクティブセルの右列になったり、セルの左側、右側だったりと一定しません。 
>アクティブセルの中央に貼り付ける方法は、ないでしょうか? 
新規ブックの標準モジュールに以下のコードをコピーして下さい。 
 
'=============================================================== 
Sub main() 
  Dim ovl As Shape 
  Set ovl = sample_oval(Worksheets("sheet1")) 
'  sheet1にサンプルの円を作成 
  ovl.Placement = xlMove 
  ovl.Copy 
  With ActiveSheet 
   .Paste 
   Set novl = .Shapes(.Shapes.Count) 
   End With 
  With ActiveCell 
    novl.Left = .Left + .Width / 2 - ovl.Width / 2 
    novl.Top = .Top + .Height / 2 - ovl.Height / 2 
    End With 
End Sub 
'===================================================================== 
Function sample_oval(sht As Worksheet) As Shape 
  Set sample_oval = sht.Shapes.AddShape(msoShapeOval, 179.25, 160.5, 81#, 81#) 
End Function 
 
Sheet1以外のシートをアクティブにしてセルE15あたりを選択した状態で実行してみて下さい。 
 | 
     
    
   |