Option Explicit
Option Base 0
'
Public Sub 直線並ぶ模様描画マクロ()
Const LNUPCXP = 160 '描画中心位置X
Const LNUPCYP = 180 ' Y
Const LNUPWID = 220 '図形幅
Const LNUPHEI = 220 '図形高さ
Const LNUPCNT = 20
'
Const LNUPWEI = 0.75 '線の太さ
'---------------------------------------------------------------------------
Dim Ip As Integer, Jp As Integer, Kp As Integer
Dim lngCol As Long
Dim intXGp As Integer, intYGp As Integer
'
lngCol = vbMagenta '←線色
'
intXGp = (LNUPWID \ 2) \ LNUPCNT
intYGp = (LNUPHEI \ 2) \ LNUPCNT
For Ip = 0 To LNUPCNT - 1
Jp = LNUPCNT - 1 - Ip
'*右上(第一象限)
With ActiveDocument.Shapes.AddLine( _
LNUPCXP, LNUPCYP - intYGp * Ip, _
LNUPCXP + intXGp * Jp, LNUPCYP).Line
.ForeColor.RGB = lngCol
.Weight = LNUPWEI
End With
'*左上(第二象限)
With ActiveDocument.Shapes.AddLine( _
LNUPCXP, LNUPCYP - intYGp * Ip, _
LNUPCXP - intXGp * Jp, LNUPCYP).Line
.ForeColor.RGB = lngCol
.Weight = LNUPWEI
End With
'*左下(第三象限)
With ActiveDocument.Shapes.AddLine( _
LNUPCXP, LNUPCYP + intYGp * Ip, _
LNUPCXP - intXGp * Jp, LNUPCYP).Line
.ForeColor.RGB = lngCol
.Weight = LNUPWEI
End With
'*右下(第四象限)
With ActiveDocument.Shapes.AddLine( _
LNUPCXP, LNUPCYP + intYGp * Ip, _
LNUPCXP + intXGp * Jp, LNUPCYP).Line
.ForeColor.RGB = lngCol
.Weight = LNUPWEI
End With
Next Ip
End Sub
蛇足
中学生の時、ノートの余白に、手書きで、そんな図形をよく書いていました。