首页 > 解决方案 > 在 Word 中查找文本

问题描述

Sub tupdate()
Dim wdApp As Word.Application
Dim wdDoc As Word.Document
Dim wdRng As Word.Range

Set wdApp = CreateObject("word.application")
wdApp.Visible = True
Set wdDoc = wdApp.Documents.Open("C:\Users\dineshkumar.s\Documents\UiPath\PMS_Project\Template\Band 3\PMS_2019_Increment & Promotion Letter - Band 3 - Copy.docx")
For Each wdRng In wdDoc.StoryRanges

With wdRng.Find
.Text = "Emp Code"
.Replacement.Text = "0001"
.Wrap = wdFindContinue
.Execute Replace:=wdReplaceAll
End With

Set wdApp = Nothing: Set wdDoc = Nothing: Set wdRng = Nothing

Next wdRng
End Sub

当我运行这个宏时,它给出了未定义的用户定义类型

在此处输入图像描述

标签: vbams-word

解决方案


您是否通过工具|参考设置了对 Word 的参考?

同样重要的是,这一行:

Set wdApp = Nothing: Set wdDoc = Nothing: Set wdRng = Nothing

应该在你的 For/Next 循环中。

您的代码也永远不会保存更新的文档...


推荐阅读