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

エクセルマクロ:ダブルクリックで図形挿入アイキャッチ 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選
エクセルマクロで、ダブルクリックで処理を実行するVBAコードをご紹介します。ちょっと手間のかかる作業を、ダブルクリックだけで完了させちゃいましょう!ぜひお試しください😉

 

この一冊で全部わかる ChatGPT & Copilotの教科書[改訂第2版]

生成AIの基本から実践まで、イラストでやさしく理解できる一冊

ChatGPTとCopilotの違いを整理して使いこなしたいなら、まず読んでおきたい一冊です!


★★★★☆ 4.2 ※ Amazonカスタマーレビューより
生成AIの基本知識から実践的な活用法まで、イラストでわかりやすく解説
ChatGPTとCopilotの違い・使い分けが明確に整理できる
プロンプト作成のコツからハルシネーションなどの注意点まで幅広くカバー