エクセルマクロで、ダブルクリックで図形を配置する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秒で終わらせます」へ
毎日の業務を瞬時に終わらせるしくみを解説
リンク