← 返回工具指南
工具指南Excel 转 CSVXLSX 转 JSONExcel 转 JSONCSV 中文乱码数据转换

Excel 怎么转 CSV 或 JSON?多工作表、公式、中文乱码与数据丢失说明

XLSX 转 CSV、JSON 前需要处理多 Sheet、公式结果、表头、空行、UTF-8 BOM 和公式注入。本文给出可复核的转换步骤。

打开配套工具 →

Excel 工作簿转 CSV 或 JSON,看起来只是换一个文件格式,实际却经常出现多工作表只剩一个、公式变空、中文乱码、重复表头覆盖数据等问题。原因很简单:XLSX 是一个可以装公式、样式、图片和多个 Sheet 的工作簿,而 CSV 只是纯文本表格,JSON 也不认识 Excel 的版式。

使用 Excel / XLSX 转 CSV / JSON 工具 时,文件会在浏览器本地读取。页面先列出所有工作表和行列数,再让你选择当前 Sheet 导出,或者把全部 Sheet 分别生成文件并打包 ZIP。

一个 Excel 为什么会导出多个文件

CSV 没有“工作表”这个概念。一个 CSV 只能表示一张二维表,所以包含三个 Sheet 的工作簿,合理的导出结果应该是三个 CSV,而不是把它们硬塞到一起。

JSON 可以人为设计成一个对象包含多个工作表,但这种结构未必符合后续系统要求。为了让文件用途清楚,工具仍按每个 Sheet 生成一个 JSON。单独处理时先在左侧选择工作表;整本处理时下载 ZIP,文件名会同时包含工作簿名和 Sheet 名。

导出前先看行列数很重要。空模板、隐藏辅助表、数据透视缓存或只有标题没有数据的 Sheet 可能也会出现在工作簿中。不要只因为列表里有这个名字,就默认其中一定有可导出的业务数据。

公式会怎样处理

XLSX 里通常同时保存公式和上次计算结果。浏览器转换器不是完整的 Excel 计算引擎,因此不会重新执行 VLOOKUP、XLOOKUP、动态数组、外部引用或宏函数,而是读取文件中已经缓存的结果。

如果工作簿由某个系统生成,或者保存前没有完成计算,公式单元格可能只有表达式,没有结果。这时导出内容可能显示公式文本。比较稳妥的做法是先在 Excel 或 LibreOffice 中打开文件,等待公式计算完成,保存并关闭,再进行转换。

如果公式依赖另一个工作簿、网络数据或自定义插件,即使桌面软件打开也可能无法得到正确结果。正式导入前,应拿几个关键金额、数量和日期与原表手工对照。

首行作为 JSON 字段名要注意什么

JSON 常用对象数组表示表格,例如每一行变成一个对象,第一行表头变成字段名。这个模式便于程序按 skupricequantity 取值,但要求字段名不能互相覆盖。

如果首行有空白,工具会生成 column_1column_2 这类名称;如果两个字段都叫“备注”,后一个会变成“备注_2”。导出前最好还是回到原表整理表头,因为自动补名只能避免数据丢失,不能判断两个“备注”在业务上分别代表什么。

没有表头的数据可以关闭“首行为 JSON 字段名”,让 JSON 以二维数组输出。这样不会把第一条真实数据误当成字段名,但后续程序需要按列位置读取。

中文 CSV 为什么打开会乱码

CSV 没有统一记录字符编码的内部元数据。现代工具通常使用 UTF-8,但部分桌面 Excel 版本直接双击 CSV 时,会按系统本地编码猜测,中文就可能显示成乱码。

在文件开头写入 UTF-8 BOM,通常可以提高 Windows Excel 直接打开中文 CSV 的兼容性,因此工具默认开启。若目标是数据库、Linux 命令行或明确要求“纯 UTF-8 无 BOM”的接口,可以关闭该选项。

分隔符也要与目标系统一致。普通 CSV 用逗号;某些使用逗号作为小数点的地区偏好分号;需要粘贴回表格或导入 TSV 时选择 Tab。不要只看扩展名,最好查清接收系统要求。

为什么要有 CSV 公式保护

当单元格文本以 =+-@ 开头时,表格软件可能把它当作公式执行。客户备注、商品标题、外部导入数据中如果出现这类内容,双击打开 CSV 就可能产生意外计算或外部调用风险。

公式保护会在这些文本前加单引号,让表格软件按文字显示。它适合人工查看和一般数据交换,但某些严格接口会把单引号也当作真实字符。准备导入 ERP、广告平台或数据库时,先用几行样本测试;确认对方系统会自行安全处理后,再决定是否关闭。

哪些内容一定会丢失

CSV 和 JSON 都不会保留字体、颜色、边框、行高、列宽、冻结窗格、条件格式、图片、图表、批注和合并单元格。.xlsm 中的 VBA 宏也不会导出或执行。

日期和长数字需要额外检查。日期会转换为可传输的文本表示,但目标系统采用哪个时区、希望 2026-07-16 还是完整 ISO 时间,需要自行确认。超过 15 位的订单号、银行卡号和商品码如果在 Excel 里已经被当作数字截断,转换工具无法恢复原始位数;这类字段应从源头设置为文本。

老式 .xls 也不应该被悄悄“兼容”。它是与 .xlsx 不同的二进制格式。建议先用 Excel 或 LibreOffice 另存为 .xlsx,确认内容正常,再转换为 CSV 或 JSON。

一套比较稳的转换流程

先备份原工作簿,然后在桌面表格软件里完成公式计算并保存。上传后检查 Sheet 数量、名称、行列数和前几十行预览。选择一个工作表导出 CSV 和 JSON,用目标软件试导入,核对中文、日期、长编号、空值和关键金额。样本没有问题,再打包全部工作表。

转换完成后,如果需要去重、筛选或数据质量检查,可以继续使用 CSV 条件筛选 / 多列排序工具CSV 列分析器。格式转换只解决载体问题,字段口径和业务正确性仍要单独检查。

总结

Excel 转 CSV 或 JSON 时,要先接受一个事实:它是数据导出,不是完整复制工作簿。多 Sheet 应分别生成文件,公式依赖已保存结果,中文 CSV 需要考虑 BOM,JSON 表头要避免空白和重复,宏与样式则不会保留。先用一个 Sheet 和少量样本验证,再批量导出,远比生成后直接覆盖原数据可靠。