ドキュメントの3行ごとに選択し、テキストを太字、下線付き、および青色にフォーマットする必要があります。私はすでにこのためのコードを持っていますが、設定された回数だけループする必要があります。
問題は、私が見つけたすべてのループチュートリアルでは、変数または状態を使用して、何らかの条件が満たされるまでこれを実行することです。その条件を「ドキュメントの下部に到達する」ように設定するにはどうすればよいですか?
私が設定したコードは以下のとおりです。括弧で囲まれた行は、私が助けを必要としているものです。
Selection.HomeKey Unit:=wdStory
[Do the following code until the end of the document]
Selection.HomeKey Unit:=wdLine
Selection.EndKey Unit:=wdLine, Extend:=wdExtend
With Selection.Font
.Bold = wdToggle
.Color = 12611584
.Underline = wdUnderlineSingle
End With
Selection.MoveDown Unit:=wdLine, Count:=3
[end of loop]
非常に基本的な質問です。私はExcelでこれらのタイプのループを設定することに精通していますが、Wordではそれを理解できません。時間を割いてお答えいただきありがとうございます。
これはうまくいくはずです
Dim lastRow As Long
lastRow = ActiveDocument.BuiltInDocumentProperties("Number Of Lines")
MsgBox lastRow
したがって、このようなものは機能し、Excelと同じタイプのfor
ループになります-
Sub CountLines()
Dim lastRow As Long
Dim i As Long
lastRow = ActiveDocument.BuiltInDocumentProperties("Number Of Lines")
For i = 1 To lastRow
If i Mod 3 = 0 Then
'Do Stuff
End If
Next
End Sub
またはもっと徹底するために-
Sub CountLines()
Dim lastRow As Long
Dim i As Long
lastRow = ActiveDocument.BuiltInDocumentProperties("Number Of Lines")
For i = 1 To lastRow
If i Mod 3 = 0 Then
ActiveDocument.Paragraphs(i).Range.Font.Bold = True
'Do other stuff
End If
Next
End Sub