【エクセルマクロ】ダブルクリックで図形挿入:簡単解説

エクセルマクロ:ダブルクリックで図形挿入アイキャッチ エクセルマクロで効率化する

エクセルマクロで、ダブルクリックで図形を配置するVBAコードをご紹介します。

このページのマクロコードは、コピペで使えます。
せひ、お試しください。

ダブルクリックで図形挿入(四角形)

以下のマクロを実行すると、ダブルクリックで四角形の図形を挿入します。

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Dim StartX As Single
Dim StartY As Single
Dim EndX As Single
Dim EndY As Single

  With Target

     'Targetの左端
     StartX = .Left
    
     'Targetの上端
     StartY = .Top
    
     'Targetの横幅
     EndX = .Offset(0, 1).Left - .Left
    
     'Targetの高さ
     EndY = .Height
       
     '図形挿入
     ActiveSheet.Shapes.AddShape(msoShapeRectangle, StartX, StartY, EndX, EndY).Select
    
     Cancel = True

  End With

End Sub

 

マクロ実行後

ダブルクリックしたセルに四角形を配置しました。

セルの幅に合わせて挿入しました。


 
 

横に長い四角形を挿入したい場合

上記コードの「Targetの横幅」部分を以下のコードにします。

EndX = .Offset(0, 2).Left - .Left  

 

 
 

縦に長い四角形を挿入したい場合

上記コードの「Targetセルの高さ」部分を以下のコードにします。

EndY = .Height * 3 

 


 

ダブルクリックで図形挿入(円)

以下のマクロを実行すると、ダブルクリックで円の図形を挿入します。

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
 
Dim StartX As Single
Dim StartY As Single
Dim EndX As Single
Dim EndY As Single
 
  With Target
 
     'Targetの左端
     StartX = .Left
     
     'Targetの上端
     StartY = .Top
     
     'Targetの横幅
     EndX = .Offset(0, 1).Left - .Left
     
     'Targetの高さ
     EndY = .Height * 4
        
     '図形挿入
     ActiveSheet.Shapes.AddShape(msoShapeOval, StartX, StartY, EndX, EndY).Select
     
     Cancel = True
 
  End With
 
End Sub

 

マクロ実行後

ダブルクリックしたセルに円の図形を配置しました。


 

【エクセルマクロ】ダブルクリックで処理を実行:超便利17選
...