word中批量替换利用excel进行,为什么替换完word有几秒卡滞

墨青小仙 2019-03-26 11:22:51
我在excel里建了两列数值,第一列对应word中需要查找的值,第二列为需要替换的值。
从网上找的类似的代码,自己改改,实现了。

但是每次替换完成后,有几秒钟word卡在那里,具体表现为,鼠标能移动,但是word无法操作。
这是为什么啊?

下面是宏代码

Sub 列表替换()
Dim Path$, iRow%, i%
Dim wd As Document

Path = ActiveDocument.Path
Set wb = GetObject(Path & "\13.xlsx") '需要把替换的excel放到word同一个目录下
With wb.sheets(1)
iRow = .Range("A1").CurrentRegion.Rows.Count
For i = 2 To iRow

Set wd = ActiveDocument

'查找替换
Rep wd, .Cells(i, 1).Value, .Cells(i, 2).Value

Next i
End With
wb.Close
End Sub

'替换
Sub Rep(wordD, FindCode As String, ReplaceCode As String)
With wordD.Range
.Find.ClearFormatting
.Find.Replacement.ClearFormatting
With .Find
.Text = FindCode
.Replacement.Text = ReplaceCode
.MatchWildcards = True
End With
.Find.Execute Replace:=wdReplaceAll
End With
End Sub
...全文
142 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

5,172

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 Office开发/ VBA
社区管理员
  • Office开发/ VBA社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧