Access OLE ObjectFrame插入Word文档时ActiveDocument未找到问题求助
Access 中 Unbound ObjectFrame 加载 Word 文档触发 Word 4228 错误问题
环境配置
- Word模板:文档基于
TestTemplate.dotm,模板的Document_New和Document_Open事件仅包含代码:Debug.Print ActiveDocument.FullName - Access数据库:
- 数据表:仅含两个字段——ID(自动编号)、DocFullName(字符串,存储Word文档路径)
- 窗体:包含两个绑定文本框(显示ID、DocFullName字段值)和一个Unbound ObjectFrame控件
问题现象
- 直接从Word打开目标文档:无报错,
Document_Open事件代码正常执行 - 通过Access代码(右键菜单或命令按钮)打开文档:无报错,
Document_Open事件代码正常执行 - 窗体加载或当前记录变更时,将文档关联到Unbound ObjectFrame:Word触发错误4228,提示「该命令不可用,因为文档未打开」,此时
Document_Open事件中无法获取ActiveDocument对象
已尝试的无效方案
- 在Access端延迟绑定Unbound ObjectFrame与文档
- 在Word端延迟执行
Document_Open中的代码 - 改用Bound ObjectFrame控件,问题仍存在
此前已在Access World和Microsoft Q&A平台提问未解决,现寻求可行解决方案。
内容的提问来源于stack exchange,提问作者lauro
相关产品推荐
相关产品推荐

