強調表示されているか、下線が付いていない太字のドキュメント内のすべてのテキストをカウントする単語マクロがあります。マクロは正常に機能しますが、カウントは一部のドキュメントで「検索」機能が返すものよりもわずかに多くなります(誰かがそれを理解することに興奮する理由を知っている場合)。
マクロの問題は、マクロが非常に非効率的であり、長さが約50ページのドキュメントで実行すると、コンピュータに取るに足らない時間の遅れが生じることです。同様の機能のマクロを作成するためのより効率的な方法を見ている人はいますか?
Dim highlightCount
Dim boldCount
Dim wordTotal
boldCount = 0
highlightCount = 0
For Each w In ActiveDocument.Words
If w.HighlightColorIndex <> wdNoHighlight Then
highlightCount = highlightCount + 1
End If
If w.Font.Bold = True Then
If w.HighlightColorIndex = wdNoHighlight Then
If w.Font.Underline = False Then
boldCount = boldCount + 1
End If
End If
End If
Next
wordTotal = highlightCount + boldCount
MsgBox ("There are " & wordTotal & " words to be spread")
End Sub