0

有没有办法使用 vba 在 Word 中准备虚拟对象?我正在尝试使用 Fields.Add 方法加快将大约 20000 多个文档变量添加到文档正文中。

Selection.Fields.Add Range:=Selection.Range, _
                     Type:=wdFieldEmpty, _
                     Text:="DOCVARIABLE " & DocVar.Name & " ", _
                     PreserveFormatting:=True

我正在考虑将它们添加到某种“虚拟段落”中,并在最后添加带有此“虚拟段落”的文档可能会加快速度。

补充说明和测试:(给喜欢阅读的人)

在 Application.Visible = False 的情况下,将 1000 个 DOCVARIABLE 字段添加到我的文档末尾大约需要 14 秒。我尝试添加的变量越多,这个时间似乎呈指数增长。我还不能添加 20000 个变量。关闭 Application.Visibility,我不知道程序是否崩溃,但 20 分钟似乎太短了。这甚至没有涉及将变量添加到表中并应用我想在此之后应用的排序算法。我还希望 Application.Visibility 处于打开状态,以便我可以在状态栏中显示处理进度。但是可见性使我的处理时间增加了三倍以上。

1000 DocVars = 14s
2000 DocVars = 35s
3000 DocVars = 70s
4000 DocVars = 101s
...
20000 will be unusably slow

谢谢

4

0 回答 0