ワードVBA 矢印挿入
知人からワード効率化の相談がありました^^
「カーソル位置に、決まった色・点線の矢印を簡単に挿入したい」
との事。
要は?普通の手順だと
〇「挿入」⇒「図形」⇒「矢印」 マウスをドラッグ
〇色の変更、点線に変更
という作業を、簡略化したいという事です^^
いままでエクセルのVBAは色々と触ってきましたが、ワードでも
VBAを使える!という事で、AIも駆使しつつ笑
諸々?調査した結果w、以下の感じで出来上がりました♪
★ちなみに、カーソル位置の取得方法に結構手間取りましたが汗
wdHorizontalPositionRelativeToPage
wdVerticalPositionRelativeToPage
を使うと、取得しやすいですね♪
ワードマクロのコード
Sub InsertArrowAtCursor()
Dim cursorRange As Range
Dim arrowShape As shape
' カーソル位置の範囲を取得
Set cursorRange = Selection.Range
' カーソル位置の座標を取得
Dim cursorLeft As Single
Dim cursorTop As Single
cursorLeft = cursorRange.Information(wdHorizontalPositionRelativeToPage)
cursorTop = cursorRange.Information(wdVerticalPositionRelativeToPage)
' 矢印の図形を挿入
Set arrowShape = ActiveDocument.Shapes.AddLine(cursorLeft, cursorTop, cursorLeft + 50, cursorTop + 50)
' 矢印のスタイルを設定(オプション)
With arrowShape
.Line.ForeColor.RGB = RGB(255, 0, 0) ' 矢印の色を赤に設定
.Line.Weight = 2 ' 線の太さを設定
.Line.EndArrowheadStyle = msoArrowheadTriangle ' 矢印のスタイルを設定
.Line.DashStyle = msoLineDash '矢印を点線に設定
End With
End Sub
実行結果
カーソル位置でマクロを実行します。(開発タブ マクロボタン)
マクロ選択画面(今回はInsertArrowAtCursorを実行!)
見事に? カーソル位置に赤い点線の矢印が挿入できました!