导出 XML 数据

导入的 XML 数据映射到工作表中的单元格的数据,并之后对数据进行了更改,您通常想要导出或将数据保存到 XML 文件。

重要: 当创建 XML 映射,并将在 Excel 中的数据导出到 XML 数据文件,则可以导出的行数限制。从 Excel 导出到 XML 将保存 65536 行的最大值。如果您的文件具有超过 65536 行,Excel 会将第一个 (#ROWS mod 65537) 行导出。例如,如果您的工作表 70000 行,Excel 会将导出 70000 mod 65537 = 4464 行。我们建议是 1) 改为使用 xlsx 或 2) 将文件保存为 XML 电子表格 2003 (.xml),这会丢失映射,或 3) 删除 65536 之后的所有行,然后再次导出,它将保留映射,但会丢失文件末尾的数据。

下面介绍了如何从您的工作表导出 XML 数据︰

  1. 单击开发人员>导出

    如果看不到“开发工具”选项卡上,请参阅显示“开发工具”选项卡

  2. 如果出现小的导出 XML对话框,请单击要使用的 XML 映射,然后单击确定

    如果未选择 XML 表,并且工作簿包含多个 XML 映射时,此对话框才会出现。

  3. 在较大的“导出 XML”对话框的“文件名”框中,为 XML 数据文件键入一个名称。

  4. 单击“导出”。

    注意: 如果工作表的标题或标签与 XML 映射中的 XML 元素名不同,Excel 将使用 XML 元素名,当您导出或保存 XML 数据从工作表。

下面介绍了如何从您的工作表导出 XML 数据,如果您正在处理超过 65536 行︰

  1. 从文件中的总行数减去 65537。这将使您的行数 x。

  2. Excel 工作表的从开头删除 x 行。

  3. 将工作表导出为 XML 数据文件。

  4. 关闭并重新打开 Excel 工作表。

  5. 删除总计 x 之后, 的所有内容,并将导出为 XML 数据文件。

    此过程将为您提供的行的其余部分。在点,则必须在两个 XML 导出文件以及组合它们将总原始工作表。

将映射的单元格中的 XML 数据导出到 XML 数据文件

为了与早期 XML 功能向后兼容,你可能要将文件保存到 XML 数据文件 (.xml),而不是使用“导出”命令。

  1. 按 Ctrl+S 保存文件。

    此步骤可确保在将工作簿保存为 XML 数据文件时不会丢失对工作簿所做的任何更改。

  2. 在 Excel 2010 和 2013年中,单击文件>另存为和选择您要在其中保存文件的位置。

    在 Excel 2007 中,单击 Office 按钮图像 Microsoft Office 按钮,指向另存为,旁边的箭头,然后单击其他格式

  3. 文件名框中,键入 XML 数据文件的名称。

  4. 保存类型列表中,单击XML 数据,,然后单击保存

  5. 如果您收到一条消息,指出将文件保存为 XML 数据可能会导致功能丢失,请单击继续

  6. 如果出现小的导出 XML对话框,请单击要使用的 XML 映射,然后单击确定

    如果未选择 XML 表和工作簿包含多个 XML 映射时,此对话框才会出现。

  7. 在大的导出 XML对话框的文件名框中,键入 XML 数据文件的名称。

  8. 单击“导出”。

注意: 如果工作表的标题或标签与 XML 映射中的 XML 元素名不同,Excel 将使用 XML 元素名,当您导出或保存 XML 数据从工作表。

导出 XML 数据时的常见问题

导出 XML 数据时,可能会收到类似于下面这些的消息。

可以导出 XML 映射,但某些必需元素未映射

可能有多种原因会导致出现此消息:

  • 与此 XML 表关联的 XML 映射包含一个或多个未映射到 XML 表的必需的元素。

    XML 源任务窗格中的元素分层列表通过在每个元素左侧图标的右上角放置一个红色星号来指示必需元素。 若要映射必需元素,请将它拖动到要在其中显示它的工作表位置。

  • 元素是递归结构。

    递归结构的一个常见示例是员工和经理的层次结构,其中,相同的 XML 元素嵌套在许多级别中。 虽然你可能已在 XML 源任务窗格中映射了所有元素,但 Excel 不支持深度大于一层的递归结构,因此无法映射所有元素。

  • XML 表包含混合内容。

    当元素具有子元素以及子元素外部的简单文本时,会出现混合内容。 一种常见情况是使用格式标记(例如粗体标记)来标记元素中的数据。 虽然可以显示子元素(如果 Excel 支持),不过文本内容会在导入数据时丢失、在导出数据时不可用,因此无法反复打开。

无法导出工作簿中的 XML 映射

如果无法保留与其他元素的映射的元素关系无法导出 XML 映射。这种关系可能不会保留,原因如下︰

  • 映射的元素的架构定义包含在具有以下属性的序列中:

    • maxoccurs 属性不等于 1。

    • 序列了多个直接子元素定义,或将另一个排序器作为直接子。

  • 具有相同重复父元素的非重复同级元素映射到不同的 XML 表。

  • 多个重复元素映射到同一个 XML 表,并且上级元素定义未定义重复。

  • 来自不同父元素的子元素映射到同一个 XML 表。

此外,如果它具有包含以下 XML 架构构造之一,则不能导出 XML 映射︰

  • 列表的列表    一个项列表具有第二个项列表。

  • 不正常的数据    XML 表中已在架构中定义的元素出现一次(maxoccurs 属性设置为 1)。 将此类元素添加到 XML 表时,Excel 会使用该元素的多个实例填充表列。

  • 选择    映射的元素是 <choice> 架构构造的一部分。

Excel 无法保存工作簿,因为它没有任何映射的区域

Excel 无法 XML 数据文件中保存您的工作簿,除非创建一个或多个映射的范围。

如果您为您的工作簿添加 XML 映射,请按照这些步骤以将 XML 元素映射到工作表︰

  1. 单击开发人员>

    “开发工具”选项卡上的“XML”命令

    如果看不到“开发工具”选项卡上,请参阅显示“开发工具”选项卡

  2. XML 源任务窗格中,选择您想要映射到工作表的元素。

    若要选择不相邻的元素,请单击一个元素,按住 Ctrl,然后单击每个元素。

  3. 将选定的元素拖动到你希望显示它们的工作表位置。

如果您尚未添加 XML 映射到工作簿,或者如果数据不在 XML 表,将工作簿保存为 excel 启用宏的工作簿文件格式 (.xlsm)。

显示“开发工具”选项卡

如果看不到“开发工具”选项卡,请通过执行下列操作来显示该选项卡:

  • 在 Excel 2013 和 Excel 2010 中:

    1. 单击“文件”>“选项”。

    2. 单击“自定义功能区”类别。

    3. 主选项卡,下选中开发工具框,然后单击确定

  • 在 Excel 2007 中:

    1. 单击Microsoft Office 按钮 Office 按钮图像 > Excel 选项

    2. 单击常用类别。

    3. 使用 Excel 时采用的首选项中,选中在功能区中的显示开发工具选项卡框中,并单击确定

注释: 

  • 机器翻译免责声明:本文是由无人工介入的计算机系统翻译的。Microsoft 提供机器翻译是为了帮助非英语国家/地区用户方便阅读有关 Microsoft 产品、服务和技术的内容。由于机器翻译的原因,本文可能包含词汇、语法或文法方面的错误。

  • 请在 此处 中查找本文的英文版本以便参考。你和 Microsoft 社区的其他成员可以使用 Community Translation Framework (CTF) 来改进本文。只需将鼠标悬停在文章中的句子上,然后在 CTF 小组件中单击“IMPROVE TRANSLATION”即可。 单击此处了解有关 CTF 的详细信息。 使用 CTF 即表示你同意服务条款

另请参阅

在 Excel 中的 XML 视图

XML 映射中的单元格映射 XML 元素

连接到 XML 文件 (Power Query)

扩展你的技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×