VBA~直線を引こう~Excel
VBAで直線を引きたい場合はShapes.AddConnectorメソッドを設定します。AddConnector(線の種類, 始点の横位置, 始点の縦位置, 終点の横位置, 終点の縦位置)で設定できます。直線の場合は線の種類はmsoConnectorStraightになります。
下のコードを実行すると直線が引かれます。
Sub test1() ActiveSheet.Shapes.AddConnector msoConnectorStraight, 20, 20, 100, 100 End Sub
セルを基準に直線を引く
下のコードを実行するとセルA1の左上からセルC3の左上に直線が引かれます。
Sub test2() ActiveSheet.Shapes.AddConnector msoConnectorStraight, Range("A1").Left, Range("A1").Top, Range("C3").Left, Range("C3").Top End Sub
指定したシートに直線を引く
シートを指定するときはWorksheets("シート名")で指定できます。
下のコードを実行するとSheet2に直線が引かれます。
Sub test3() Worksheets("Sheet2").Shapes.AddConnector msoConnectorStraight, 20, 20, 100, 100 End Sub
ブックを指定して直線を引く
ブックを指定するときはWorkbooks("ブック名")で指定できます。
Book1.xlsxというブックが開いた状態で下のコードを実行するとBook1.xlsxのSheet1に直線が引かれます。
Sub test4() Workbooks("Book1.xlsx").Worksheets("Sheet1").Shapes.AddConnector msoConnectorStraight, 20, 20, 100, 100 End Sub