我有一个包含单列字符串(大约 400 行)的 Excel 文档。我还有一个 Word 文档,它的 Excel 文档中可能有也可能没有这些字符串。如何让 Excel 在该 Word 文档中为该单列中的每一行进行查找并检索给定字符串出现的次数?我只有Office 2003。
谢谢!
我有一个包含单列字符串(大约 400 行)的 Excel 文档。我还有一个 Word 文档,它的 Excel 文档中可能有也可能没有这些字符串。如何让 Excel 在该 Word 文档中为该单列中的每一行进行查找并检索给定字符串出现的次数?我只有Office 2003。
谢谢!
这是一个示例 Excel 宏,它计算匹配的数量并将其写在所需的字符串旁边。我在 Office 2007 上试过,但它也应该在 2003 上工作。该宏使用正则表达式,因此您需要将“Microsoft VBScript 正则表达式”库的引用添加到您的 VBA 项目(Visual Basic 编辑器 -> 工具 -> 引用)。
Sub GetMatchCount()
Dim Text, i, re
' Replace with your Word document name
Const WordFileName = "C:\Test.doc"
With CreateObject("Word.Application")
.Documents.Open (WordFileName)
Text = .ActiveDocument.Range.Text
.Quit
End With
Set re = New RegExp
re.Global = True
With ActiveSheet.UsedRange
For i = 1 To .Rows.Count
re.Pattern = .Cells(i, 1).Value
.Cells(i, 2).Value = re.Execute(Text).Count
Next
End With
End Sub