1 列の文字列 (約 400 行) を持つ Excel ドキュメントがあります。Excel ドキュメントにこれらの文字列がある場合とない場合がある Word ドキュメントもあります。その単一の列の各行に対してそのWord文書でExcelに検索を実行させ、指定された文字列が表示される回数を取得するにはどうすればよいですか? Office 2003 しか持っていません。
ありがとう!
1 列の文字列 (約 400 行) を持つ Excel ドキュメントがあります。Excel ドキュメントにこれらの文字列がある場合とない場合がある Word ドキュメントもあります。その単一の列の各行に対してそのWord文書でExcelに検索を実行させ、指定された文字列が表示される回数を取得するにはどうすればよいですか? Office 2003 しか持っていません。
ありがとう!
これは、一致の数をカウントし、検索された文字列の横に書き留めるサンプルのExcelマクロです。Office 2007で試しましたが、2003でも動作するはずです。マクロは正規表現を使用するため、「Microsoft VBScript正規表現」ライブラリへの参照をVBAプロジェクトに追加する必要があります(Visual Basic Editor-> Tools-> References)。
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