【发布时间】:2019-12-23 17:06:55
【问题描述】:
我正在遍历一个关键字列表来定义文档中的术语,但只有某些关键字会被选中。
例如,使用 Array("Agreement", "deed", "AGREEMENT", "letter agreement", "letter", "Undertaking"), "Agreement" 和 "letter" 可以很好地选择,但是 letter协议和承诺没有。
我尝试重新排列数组的顺序,但没有任何效果。
我猜我误解了数组的一些基本原理。我更熟悉 python 并且正在使用列表功能。
完整代码如下。任何指针将不胜感激。
Function getagree() As String
Dim aggrlist As Variant
aggrlist = Array("Agreement", "NDA", "deed", "AGREEMENT", "letter
agreement", "letter", "Undertaking", "Confidentiality Undertaking",
"agreement")
Set myRange = ActiveDocument.Content
With myRange.Find
For Each aggr In aggrlist
.ClearFormatting
.Text = aggr
.MatchWholeWord = True
.MatchCase = True
.Execute Forward:=True
If .Found = True Then
getagree = aggr
End If
Next
End With
End Function
【问题讨论】:
-
看起来你在字符串中间换了一个新行,我猜这是导致问题的原因。
-
在模块顶部使用
Option Explicit将有助于解决这些问题。