エクセルマクロで、セルの真ん中に横線を引くVBAコードをご紹介します。
このページのマクロコードは、コピペで使えます。
ぜひ、お試しください。
セルの中央に線を引く
以下のマクロを実行すると、セルの中央に線を引きます。
Sub 特定セルの中央に線を引く()
Dim StartX As Single
Dim StartY As Single
Dim EndX As Single
Dim EndY As Single
Range("A2").Select
'線を引く位置・線の長さを決める
StartX = Selection.Left
StartY = Selection.Top + Range("A1").Height / 2
EndX = Selection.Offset(0, 1).Left
EndY = Selection.Top + Range("A1").Height / 2
'線を引く
ActiveSheet.Shapes.AddConnector _
(msoConnectorStraight, StartX, StartY, EndX, EndY).Select
'線を黒にする
Selection.ShapeRange.Line.ForeColor.RGB = RGB(0, 0, 0)
End Sub
マクロ実行後
セルA2の中央に線を引きました。
「Selection.ShapeRange.Line.ForeColor.RGB = RGB(0, 0, 0)」の下に、
以下のコードを追加してください。
Selection.ShapeRange.Line.Weight = 3
セルの中央に線を引く(二重線)
以下のマクロを実行すると、セルの真ん中に二重線を引きます。
Sub 特定セルの中央に二重線を引く()
Dim StartX As Single
Dim StartY As Single
Dim EndX As Single
Dim EndY As Single
Range("A2").Select
'線を引く位置・線の長さを決める
StartX = Selection.Left
StartY = Selection.Top + Range("A1").Height / 2
EndX = Selection.Offset(0, 1).Left
EndY = Selection.Top + Range("A1").Height / 2
'線を引く
ActiveSheet.Shapes.AddConnector _
(msoConnectorStraight, StartX, StartY, EndX, EndY).Select
'二重線へ変更
Selection.ShapeRange.Line.Style = msoLineThinThin
'線を黒にする
With Selection.ShapeRange.Line
.ForeColor.RGB = RGB(0, 0, 0)
.Weight = 4
End With
End Sub
マクロ実行後
セルA2の中央に二重線を引きました。
セルの中央に線を引く(ダブルクリック)
以下のマクロを実行すると、ダブルクリックしたセルの真ん中に赤い線を引きます。
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
'線を引く位置・線の長さを決める
StartX = Target.Left
StartY = Target.Top + Target.Height / 2
EndX = Target.Offset(0, 1).Left
EndY = Target.Top + Target.Height / 2
'線を引く
ActiveSheet.Shapes.AddConnector _
(msoConnectorStraight, StartX, StartY, EndX, EndY).Select
'線を赤にする
Selection.ShapeRange.Line.ForeColor.RGB = RGB(255, 0, 0)
End Sub
マクロ実行後
ダブルクリックしたセルの中央に、赤い線を引きました。
この記事がお役に立ちますと幸いです。
【エクセルマクロ】取り消し線を引く:使用例7選
...
「Excel自動化[最強]時短仕事術」
自動化の基礎と時短に役立つテクニック解説書
毎日の定型業務を手際良く行え、大幅な業務効率化を実現!
リンク