【发布时间】:2015-12-06 18:09:04
【问题描述】:
第一次发帖,虽然我可能会在爬行之前尝试跑步,但这是我的情况(使用 Word 2013)。
我创建了一个用户表单,其中分支 A 要求提供所需的所有数据 填充我们使用的文档(固定格式且不能更改) 组织,针对特定实例。
文档现在保存为“.docx”文件,去掉了宏(vba
代码)。到目前为止一切顺利。B 分支,旨在允许加载在 分支 A(如上)。这个现有文档中的数据现在应该是 复制到嵌入在双击时创建的新文档中的用户表单 单击模板,以允许更新各个字段,同时避免 重新输入未更改的详细信息的必要性(随后保存 作为“.docx”)。
我可以通过双击模板启动新文档,然后 然后通过命令按钮,执行代码打开预先存在的文档。
但这就是我开始感到非常困惑的地方......
当我开始通过模板创建一个新文档时,Project Explorer 看起来像这样......
Project Explorer on new document from template
现在我在 VBA 中打开一个现有文档 (Filled.docx) 以提供类似项目资源管理器的视图..
Existing doc opened in preparation for copying of data
所以现在我有 2 个 ThisDocument 实例。
代码正在'(DOC Generator)'下执行
我要提取/复制到(DOC 生成器)中的用户表单的数据是
ThisDocumentin(已填写)。当我完成用户表单中的信息编辑后,我将 保存
ThisDocument(Document1),如果我创建了一个 全新的文档。
我遇到的困难是,如何引用现有文档中的 ActiveX 控件将其复制到用户窗体。
这样的???
txt_Author = ThisDocument.lbl_AssessingOfficer.Caption, where
- txt_Author 是用户表单中的一个文本框,并且,
-ThisDocument.lbl_AssessingOfficer.Caption 旨在引用包含数据的现有文档(已填充)中的标签。
除了当我测试这个时,ThisDocument 或 ActiveDocument 都接机
来自ThisDocument(Document1)的数据。
如何从ThisDocumentunder (Filled) 引用标签(数据)?
提前感谢您的帮助和耐心等待。如果我可以这么大胆,如果 可能在回答时,如果您能解释代码引用的工作原理,这对我(可能还有其他人)将非常有帮助。
【问题讨论】:
-
欧莱,谢谢。还是卡住了。在模块 1 中包含带有“公共 oOtherDocument 作为文档”的代码。我收到“错误 434”。当我尝试复制数据时。类似代码: DestinationName = oOtherDocument.Lbl_DestinationName12Pg1.Caption 其中,DestinationName 是用户表单中的一个文本框,oOtherDocument.Lbl_DestinationName12Pg1.Caption 应该引用位于“Filled.docx”标签中的文本(最初从 DestinationName 接收文本)。值因此转换,DestinationName (userform = manual input) => Lbl_DestinationName12Pg1.Caption => 来自模板的新文档。我的错误?
-
欧莱,谢谢。还是卡住了。在模块 1 中包含带有“公共 oOtherDocument 作为文档”的代码。我得到“运行时错误 '438' 对象不支持此属性或方法”,代码:DestinationName = oOtherDocument.Lbl_DestinationName12Pg1.Caption DestinationName 是用户表单中的一个文本框+ oOtherDocument.Lbl_DestinationName12Pg1.Caption 应参考位于“Filled.docx”标签中的文本(最初从 DestinationName 接收文本)。值因此转换,DestinationName (userform = manual input) => Lbl_DestinationName12Pg1.Caption => 来自模板的新文档。我的错误?
标签: vba ms-word office-2013