想实现题号的标注,就像这样的方式,通过搜索每一行的开头,如果满足“数字+.”的形式,就把它标红 。
For i = 1 To 10000 'ActiveDocument.Paragraphs.Count
If i = daan_d Then
MsgBox "发现最大题号为:" & UBound(r)
Exit For
End If
Set a = ActiveDocument.Paragraphs(i).Range
If Not a.Information(12) Then
Debug.Print a.Text
a.SetRange a.Start, a.Start + 3
a.Select
With a.Find
.ClearFormatting
.MatchByte = False
.Forward = True
.Wrap = wdFindStop
.Text = "[0-9]{1,2}[..]"
.MatchWildcards = True
.Execute
If .Found = True Then
a.Select
a.Font.Fill.ForeColor = vbRed
Set a = Nothing
End If
' MsgBox UBound(r)
End With
End If
Next
可是,每次就会出现这样的情况。
从第一题到第九题,都可以正确查找到。到第十题就会出现问题,她会把表格中的数字和标点 查找到。
不知道问题出在哪里了?