VB6.0 使用修改过的word宏代码实现全部替换的功能,但是效率太慢
VB6.0 使用修改过的word宏代码实现全部替换的功能,但是效率太慢 是什么问题 或者有没有更效率的办法使用宏是为了全部替换一些关键字符串,然后控制表格的添加行 还有给表格添加内容
wordapp.Selection.Find.ClearFormatting
wordapp.Selection.Find.Replacement.ClearFormatting
For i = 0 To UBound(Tzheng) Step 1
With wordapp.Selection.Find
.Text = Tzheng(i)
.Replacement.Text = Nrong(i)
.Forward = True
'.Wrap = wdFindAsk
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchByte = True
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
wordapp.Selection.Find.Execute Replace:=wdReplaceAll
StatusBar1.Panels(4).Text = i & "-" & Tzheng(i) & ":" & Nrong(i)
word本身使用一样的宏速度是秒记 用VB使用修改后的宏代码就是分钟计 而且是10分钟左右……
这是什么为什么呢
我有另一个方法 能比较快得全部替换 但是稳定性不太好 容易出错
Dim MyWord As Word.Application
Dim MyWordBook As Word.Document
Set MyWord = CreateObject("Word.Application")
Do While MyWordBook.Content.Find.Execute("要被替换的内容")
With MyWordBook.Content
If .Find.Execute("要被替换的内容") Then
.Text = 替换的内容
End If
End With
Loop
而且这个方法使用之后 我不会怎么控制表格和为表格添加内容
希望大家互相讨论 看看有什么更好的办法 效率更快的办法
[此贴子已经被作者于2016-5-5 16:26编辑过]