我正在尝试使用range.find方法提取粗体文本,除非整个范围实际上是粗体(不太可能发生,更多是边缘条件),所有都是桃子色。
With rngFindRange.Find
.ClearFormatting
.Font.Bold = True
Do
.Execute
If Not .Found Then
Exit Do
End If
'do something with found text'
Set rngFindRange = ActiveDocument.Range(rngFindRange.End + 1, Selection.End)
Loop
以上匹配粗体文本的开头或右边的结尾,即使是两个,但不是整个范围都是粗体。我想在搜索范围之前我可能需要测试range.font.bold = true。 stackoverflow的想法是什么?
答案 0 :(得分:6)
这应该找到任何粗体文字:
Sub SearchBoldText()
Dim rng As Range
Set rng = ThisDocument.Range(0, 0)
With rng.Find
.ClearFormatting
.Format = True
.Font.Bold = True
While .Execute
rng.Select
rng.Collapse direction:=wdCollapseEnd
Wend
End With
Set rng = Nothing
End Sub