【エクセルマクロ】ダブルクリックで図形挿入:動画あり

エクセルマクロ:ダブルクリックで図形挿入アイキャッチ ExcelVBA

エクセルマクロで、ダブルクリックで図形を配置する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

 

マクロ実行後

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


 
 
この記事がお役に立ちますと幸いです。
 
・【エクセルマクロ】ダブルクリック処理を自動化する使用例まとめ
 

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

 

「たった1秒で仕事が片づくExcel自動化の教科書【増強完全版】」
「5時間かかる作業が3時間でできます」ではなく「1秒で終わらせます」へ
毎日の業務を瞬時に終わらせるしくみを解説