UltKit

Excel转XML转换器

无需先在Excel中创建XML映射,就能从表格直接得到XML文件。每一行变成一个记录元素,每个列标题变成存放该单元格值的标签。

数据转换器

或将CSV, TSV, TXT … 文件拖放到此处 ·

单个文件最大 95 MB· 最多 20 个文件· 30 分钟后删除

输出

文件在我们的服务器上处理,并在 30 分钟后删除。

使用方法

  1. 1

    添加表格文件

    上传 XLSX、XLS、XLSM 或 ODS 文件,每批最多 20 个,每个不超过 95 MB。请确认第 1 行是你想用作标签的列名。

  2. 2

    设置根元素名称

    在高级设置中,将 XML 根标签设置为接收系统要求的外层元素,例如 products 或 employees。保持开启格式化输出,可得到带缩进、便于阅读的文件。

  3. 3

    转换并校验

    点击转换为 XML并下载。如果接收方提供了 XSD 架构,发送前请先用验证工具检查文件。

Excel 转 XML 会读取第一个工作表中的表格,并写成嵌套元素:一个外层根元素,每行一条记录,每列一个子标签,标签名取自你的表头。

为什么要把Excel转换为XML

XML 于 1998 年 2 月 10 日成为 W3C 推荐标准,在 JSON 主导网络之前,一代商业软件都围绕它构建。供应商门户、薪资和人事系统、商品目录导入工具以及许多企业集成至今仍只接受 XML 上传。而掌握数据的人,比如采购助理或办公室主管,却把数据放在 Excel 里。总得有人在两者之间搭桥,通常是在截止日期的前一天。

Excel 理论上可以做到:先启用隐藏的“开发工具”选项卡,编写或加载 XSD 架构,把每个元素拖到列上建立 XML 映射,然后导出。对于架构固定的月度报表,这很合理,但只处理一次性文件就太繁琐了。本转换器省去映射:表头变成标签名,行变成记录。如果接收方更想要 JSON,Excel 转 JSON会把同样的行写成对象。

Excel转XML转换示例

表头为 sku、name 和 stock 的工作表,根标签设为 products
<?xml version="1.0" encoding="UTF-8"?>
<products>
  <row>
    <sku>00418</sku>
    <name>线槽 &amp; 卡扣</name>
    <stock>42</stock>
  </row>
  <row>
    <sku>00419</sku>
    <name>脚踏</name>
    <stock>7</stock>
  </row>
</products>

整理表格,确保XML能通过校验

建议避免
使用单行表头,名称要短,如 unit_price 或 email表头以数字开头或包含空格
每个工作表只放一种记录,例如只放产品或只放员工在表头行合并单元格,或留下空白表头单元格
将 SKU、邮政编码等编码列设为文本格式,以保留前导零自己输入 & 或 < 的转义;系统会自动写好,如上面的 &amp;
向接收方询问根元素名称,并填入 XML 根标签在底部保留合计或小计行;它们会变成虚假记录

Excel导出XML的几种方法对比

UltKitExcel XML 映射导出Excel XML 电子表格 2003
需要先有 XSD 架构noyesno
标签名取自你的表头yes来自映射no
每行一个元素,其他系统可读取yesyesCell 和 Row 元素
支持 .xls、.ods 和 .numbers 文件yes仅限 Excel仅限 Excel
一批可转换 20 个文件yesnono

XLSX与XML格式详解

XLSX

Microsoft Excel 工作簿

XLSX 是自 Office 2007 起 Microsoft Excel 的默认工作簿格式,基于 Office Open XML 标准。它把多个工作表、公式、格式、图表、数据透视表和数据验证存放在由 XML 组成的 ZIP 包中。每个工作表支持超过一百万行,是商务电子表格默认的交换格式。Google 表格、LibreOffice 和 Numbers 都能打开 XLSX,但宏和高级功能可能无法保留。

压缩方式
–
透明度
–
动画
–
发布年份
2007 · Microsoft
XLSX 转换器

XML

可扩展标记语言

XML 是 W3C 于 1998 年发布的结构化数据标记语言。它使用带属性的嵌套标签,并支持模式、命名空间和验证,因此适合处理复杂文档。RSS 订阅、SVG、Office 文档、站点地图以及许多企业和政府的数据交换都以它为基础。XML 比 JSON 冗长,但所有编程语言和许多电子表格工具都能读取。

压缩方式
–
透明度
–
动画
–
发布年份
1998 · W3C
XML 转换器

当保存在表格里的数据必须交给只接收带标签记录的系统时,就需要把 Excel 转成 XML:例如合作方的导入接口、较旧的 ERP 或 CMS,或由架构验证器检查的测试数据。

Excel转XML:发送文件前需要了解的问题

为什么Excel提示XML映射无法导出?

Excel 自带的“导出 XML”命令只能通过绑定架构的 XML 映射工作,而且不支持某些映射结构,例如列表嵌套列表。本转换器无需映射:它把工作表当作普通表格读取,每行写成一条记录。

XLSX文件本身不就是XML吗?

内部确实是。.xlsx 是由 ISO/IEC 29500 定义的 XML 部件组成的 ZIP 包。但工作表部件存储的是单元格引用和指向共享字符串表的指针,而不是可读的记录,所以对需要“每位客户或每个产品一个元素”的系统没有用处。

什么样的表头名称能生成有效的XML标签?

XML 1.0 允许字母、数字、连字符、下划线和句点,但名称不能以数字开头,也不能包含空格,以 xml 开头的名称属于保留名称。转换前请把 2025 Sales 或 Unit Price 之类的表头改为 sales_2025 和 unit_price。

能导出工作簿中的所有工作表吗?

将要转换的工作表设为“全部工作表”,每个标签页都会被转换,而不只是第一个。每个工作表请只放一种记录类型,因为每个工作表都被视为独立的表。

公式和单元格格式会怎样处理?

XML 只承载数值,因此公式单元格会写成其计算结果。粗体、填充颜色、列宽和批注属于显示样式,不会出现在输出中。

如何把XML重新导回表格?

使用 XML 转 Excel。记录会重新变为行,标签会变为列标题,你可以在 Excel 中编辑数据,接收方需要更新时再转换一次。