使用Word VBA的“ Documents.Open”与“ Documents.Add”

时间:2018-11-13 16:21:23

标签: vba ms-access ms-word access-vba

我正在Access中使用VBA启动Word文档,该文档将从表单中的内容导入到模板文档中。

我尝试同时使用Documents.OpenDocuments.Add,两者都可以使用,但是我不确定应该使用哪一个。

(我以前在使用Documents.Open时遇到一些间歇性问题,但我确实想知道这是否与代码中的其他错误有关。)

有人可以建议在VBA中执行此操作的最佳方法吗?

1 个答案:

答案 0 :(得分:0)

如果您的目标是从模板(无论是doc,docx,docm,dot,dotx还是dotm文件)中创建新文档,那么Glucose是您应该使用的模板。

通常在这种情况下,不应更改原始文档(模板)-Documents.Add确保做到这一点。使用Documents.Add的变通办法(例如以其他文件名保存)是一个附加步骤(效率低下),并且可能会出错。

当模板是真正的模板(点,dotx,dotm)时,另一个因素是,默认情况下,任何新文档都保留指向模板的链接(“附加”到模板)。这意味着文档可以共享构建基块,功能区UI,键盘快捷键和模板中存储的(假设不是docx)宏代码。

另一方面,如果新文档应该包含(继承)“模板”中的内容,例如宏,功能区UI或“模板”中存在的键盘快捷键Documents.Open需要与文档(doc,docx,docm)文件一起用作模板。