Option Explicit
Option Base 0
'
Public Sub 直線並ぶ模様描画マクロ其の二()
Const LNUPCTRX = 190 '描画中心位置X
Const LNUPCTRY = 180 ' Y
'
Const LNUPRADI = 100 '図形の半径
Const LNUPDVCN = 10 '線描画 本数
Const LNUPSTEP = (LNUPRADI / LNUPDVCN)
'
Const LNUPLNCL = &H82004B '線の色(紫色)
Const LNUPLNWE = 1# '線の太さ
'---------------------------------------------------------------------------
Dim Ip As Integer, Jp As Integer
Dim intSxp As Integer, intSyp As Integer
Dim intExp As Integer, intEyp As Integer
Dim sngSit As Single
'
'
sngSit = (Atn(1) / 45) * (360 / 6)
For Ip = 0 To 5
For Jp = 1 To LNUPDVCN
'線の開始・終了位置を算出
intSxp = (LNUPSTEP * Jp) _
* Cos(sngSit * (Ip + 0)) + LNUPCTRX
intSyp = (LNUPSTEP * Jp) _
* Sin(sngSit * (Ip + 0)) + LNUPCTRY
intExp = (LNUPSTEP * (LNUPDVCN - Jp)) _
* Cos(sngSit * (Ip + 1)) + LNUPCTRX
intEyp = (LNUPSTEP * (LNUPDVCN - Jp)) _
* Sin(sngSit * (Ip + 1)) + LNUPCTRY
'線描画
With ActiveDocument.Shapes.AddLine(intSxp, intSyp, _
intExp, intEyp).Line
.ForeColor.RGB = LNUPLNCL '←線色
.Weight = LNUPLNWE '←線の太さ
End With
Next Jp
Next Ip
End Sub