从 Excel 导出 XML 数据

注意: 我们希望能够尽快以你的语言为你提供最新的帮助内容。本页面是自动翻译的,可能包含语法错误或不准确之处。我们的目的是使此内容能对你有所帮助。可以在本页面底部告诉我们此信息是否对你有帮助吗?请在此处查看本文的英文版本以便参考。

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

重要: 当创建 XML 映射并将 Excel 中的数据导出到 XML 文件时,可以导出的行数存在限制。 从 Excel 导出到 XML 最多可保存 65536 行。 如果文件包含超过 65,536 行,则应执行下列操作之一:

  • 导出数据使用。XLSX 文件格式。

  • 将文件保存为 XML 电子表格 (。XML),这会丢失映射。

  • 删除 65,536 之后的所有行,然后再次导出以保持映射,但会丢失文件末尾的数据。

请按以下步骤操作:

  1. “开发工具”选项卡上的“XML”组中,单击“导出”

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

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

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

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

  4. 单击“导出”。

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

请按以下步骤操作:

  1. 减去 65537 从您的文件,以获取多余的行数中的总行数。

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

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

  4. 单击关闭,但不保存工作表。然后重新打开 Excel 工作表。

  5. 从上面的步骤 1 中删除行之外的所有行,然后将导出为 XML 数据文件。

    此过程将为您提供的行的其余部分。此时,您将有两个 XML 导出文件,您可以组合以创建您的原始工作表的副本。

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

请按以下步骤操作:

  1. 按 Ctrl+S 保存文件。

    这确保该工作簿保存为 XML 数据文件时,对您的工作簿所做的任何更改不会丢失。

  2. 单击文件>另存为,然后选择您要在其中保存文件的位置。

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

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

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

  6. 如果出现小的导出 XML弹出窗口,单击要使用的 XML 映射,然后单击确定

    如果未选择 XML 表和工作簿包含多个 XML 映射,才会出现此弹出窗口。

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

  8. 单击“导出”。

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

导出 XML 数据时的常见问题

导出 XML 数据时,您可能遇到邮件,如下面。

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

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

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

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

  • 元素是递归结构。

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

  • XML 表包含混合内容。

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

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

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

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

    • maxoccurs 属性不等于 1。

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

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

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

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

此外,如果 XML 映射包含以下 XML 架构构造之一,则无法导入 XML 映射:

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

  • Denormalized 数据      XML 表具有已定义架构中要一次出现的元素 ( maxoccurs属性设置为 1)。将此类元素添加到 XML 表时,Excel 将填充表列中具有多个实例的元素。

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

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

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

如果将 XML 映射添加到了工作簿,请执行以下步骤以将 XML 元素映射到工作表:

  1. 在“开发工具”选项卡上的“XML”组中,单击“”。

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

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

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

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

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

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

此信息是否有帮助?

谢谢您的反馈!

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

×