将数据存储在Word文件中

时间:2018-10-31 09:16:26

标签: excel vba ms-word

我有一个Excel文件,该文件包含约800行和几列数据。 Word文件具有三个下拉菜单。第一个下拉列表具有一列数​​据。第二个下拉列表的内容取决于下拉列表1中选择的数据,下拉列表3取决于下拉列表2。

我已经制作了一个VBA脚本,该脚本通过读取excel文件来完成。我的问题是,我需要摆脱excel文件,因为我需要自己拥有word文件。

如何在用户无法看到的情况下将800行excel数据存储到word文件中,以便可以在VBA代码中使用它。

我已经研究了这个问题: https://www.techwalla.com/articles/how-do-i-create-a-microsoft-word-database 但这只会生成另一个文件,与仅拥有一个excel文件没什么不同。

1 个答案:

答案 0 :(得分:0)

Word存储数据的能力有限。在Word 2007中引入Open XML文件格式之前,唯一的可能性是使用“文档变量”-一种保存字符串信息的方法。尽管可以用字符分隔格式存储数据,但是对于如此大量的数据,建议不要这样做。

Open XML文件格式引入了“自定义XML部件”的概念-可以存储在Office文档的ZIP文件结构中的XML文件。 (除Word,Excel和PowerPoint外,还支持自定义XML部件)。

可以使用可以在COM级别进行交互的任何编程语言的标准XML工具(例如,CustomXMLPart解析器)通过对象模型(MSXML)访问自定义XML部件。还可以使用任何可与ZIP包一起使用的编程语言,通过 closed Office文档的Open XML访问自定义XML部件。

用户看不到自定义XML部件。仅在Word中,可以将自定义XML部件的内容链接(映射)到文档表面上的内容控件。节点的内容将显示在文档中;用户编辑将被写回到XML,并且这种映射为内容控件中采取的操作(例如,验证)提供了其他事件。

当前,这是推荐的在Office文档中“嵌入”数据的方法。