vba - 在 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
当我运行这个宏时,它给出了未定义的用户定义类型
解决方案
您是否通过工具|参考设置了对 Word 的参考?
同样重要的是,这一行:
Set wdApp = Nothing: Set wdDoc = Nothing: Set wdRng = Nothing
不应该在你的 For/Next 循环中。
您的代码也永远不会保存更新的文档...
推荐阅读
- r - 绝对值差的逻辑不产生正确的输出
- python - 在 Python 中使用 cx_Oracle 导入 Apex 应用程序
- ios - 故事板日期选择器中的选择性日期(iOS 开发)
- c# - Azure Keyvault 停止在 IIS 托管站点上工作
- r - 根据条件重命名列值
- javascript - MouseEvent用javascript模拟onclick事件
- r - 我可以对矩阵的一列进行排序并传输 R 中同一行中的每个数字吗?
- azure - 工具退出并显示消息“退出并返回代码:-1”
- google-fit-sdk - Google 健身所需的更新
- javascript - POST 请求返回 index.html doc 而不是 react js 中的 json 数据