将XSD中的枚举转换为Excel中的下拉列表
我有一个XSD文件,其中包含我的XML架构。 XSD文件包含一个xs:Enumeration
定义,它允许我select5个选项作为其中一个节点的值。
现在,我们希望能够通过Excel生成这些数据,以便非技术人员可以创build它。
当我将这个XSD文件导入到Excel中时,我希望将xs:enumeration
值列为下拉列表。
我怎么做到这一点?
编辑:开始赏金。 为了赢得,我需要一个工作示例代码:)
正如xcut所说,要做到这一点并不容易。 但这是可以完成的。 你需要做的是:
- 使用
WorkbookAfterXmlImport
事件来为您的枚举使用MSXML读取您的架构。 - 在您的数据表中查找映射列中代码中具有枚举的元素。 这通常是一个
ListObject
。 - 将这些枚举添加到列表的
Validation.InCellDropdown
到您的映射列范围,减去标题。
我昨天几次看到这个问题,并没有回答,部分原因是没有快速解决你想做的事情。
您对于要实现的目标有点不清楚:将Excel中的枚举从Schema导出,或将Schema导入到Excel中,或者往返。
如果您愿意将电子表格保留为“主”副本,则可以执行以下操作:
- 在Excel中主要枚举(例如,列A有一个types名称,列B中的行具有值)
- 定期地,当您需要时,点击“另存为…”XML电子表格
- 在XML电子表格上运行XSLT以生成架构文件
那么,这是一个想法,至less:)或者,你可以写入VBA代码。