利用Excel查找替换Word文本框里的内容
一般情况下,利用Excel的Vba直接查找是忽略查找Word文本框里内容的,使用以下子程序,可以实现这一功能。
Sub ReplaceInTextBox(ByVal vFind As String, ByVal vReplace As String)
Dim ShapesCount As Integer
Dim tmpString As String
ShapesCount = WordApp.ActiveDocument.Shapes.Count
If ShapesCount > 0 Then
For i = 1 To ShapesCount
If WordApp.ActiveDocument.Shapes(i).Type = 17 Then
tmpString = WordApp.ActiveDocument.Shapes(i).TextFrame.TextRange.Text
WordApp.ActiveDocument.Shapes(i).TextFrame.TextRange.Text = Replace(tmpString, vFind, vReplace)
End If
Next
End If
End Sub
事先需引用 Word 11.0 动态库
事先需要的定义如下:
Dim WordApp as Word.Application