带有空格的Excel XML表格标题

我正在通过web服务在我的系统中公开表格以在Excel工作表中使用(作为XML源)。 这些表可以包含包含空格和其他字符的XML元素名称中无效的标题。 Excel是好的,我的系统是好的,但中间格式(XML)不是。

那么,XML Source可以告诉Excel(通过模式或数据)使用不同于元素名称的表格标题吗? 例如:

<xs:element name="place-of-origin"> <xs:annotation> <xs:appinfo><od:displayName>Place of origin</od:displayName></xs:appinfo> </xs:annotation> </xs:element> 

编辑:这里是一个示例XML文件和相应的XSD 。 在Excel中打开这个表格会产生一个列标题为“sex_of_person”的表 – 所以问题是:XML或模式如何表示这个标题应该是“人的性别”(带空格)或“#$!%”(请原谅我),或任何其他string无效的XML名称 ?

您说您使用XML作为“数据源”,从而使用Excel的XMLfunction(从版本2003开始)。

当您在Excel中打开一个XML文件时,Excel为您提供了将其转换为可读forms的选项(并提供了自动引用XML模式的选项)。

完成此操作后,Excel将在后台将XML文件(以及隐式生成的XML模式,但您可以使用您的模板)作为XML源使用。

Excel 2007与打开的XML文件和XML源

从现在开始Excel的列标题可以被改变(Excel有一个内部的方式来将XML文件中的sex_of_person链接到表格的第二列)。 列出更改的列标题

为了certificate这一点,我在我的例子中删除了除了一个之外的所有行。 注意当我在XML窗格中select“sex_of_person”时,Excel如何select第二行“人的性别”( 没有标题)。 现在,当我单击刷新(在我的德语版本中:“Daten aktualisieren”)Excel将重新加载XML文件并将值插入到相应的列中。 使用“导入”,您甚至可以更改XML源(只要格式保持不变)。

所以从现在开始,我不打开Excel中的XML文件(就像你已经完成的那样),但是我打开这个从现在开始定义表示的Excel文件(即从XML元素到列的链接)并且包括链接到XML文件。

我不确定这是你的意思。

问候安德烈亚斯