打开或粘贴 CSV 文件,然后点击 下载 XLSX。默认情况下每个单元格都写成文本,所以 00731、20 位的订单号以及 =SUM(A1:A2) 这样的值,在 Excel 中都会保持原样,而不会被去掉前导零、四舍五入或当作公式计算。对需要计算的列,请选择 识别数字和 true/false。工作簿在你的浏览器中生成,CSV 文件不会上传。
如何把 CSV 转换为 Excel
- 打开
.csv、.tsv或.txt文件,拖到工具上,或粘贴数据。在 输入 下检查表格;如果所有内容都挤在一列,或中文显示为乱码,请在 导入设置 中设置分隔符或编码(中文 Windows 版 Excel 保存的 CSV 通常选 GB18030)。 - 设置 工作表名称(初始为文件名),并选择 值类型。
- 保留或修改表头和布局选项,然后点击 下载 XLSX,用 Excel、WPS、LibreOffice Calc 或 Google 表格打开文件。
要用相同设置转换多个文件,请选择 批量转换多个文件。每个文件生成各自的工作簿,并打包成一个 ZIP 一起下载。批量转换时,每个文件不能超过 25 MB。
各选项的作用
| 工作表名称 | 最多 31 个字符。Excel 工作表名称中不允许使用的 : \ / ? * [ ] 会被替换为空格;名称为空时使用 Sheet1。 |
|---|---|
| 所有值都保留为文本 | 默认选项。每个非空单元格都是 Excel 文本单元格,内容与 CSV 中的值完全相同。Excel 可能会在像数字的文本上显示一个绿色小三角(“以文本形式存储的数字”),但值本身没有改变。 |
| 识别数字和 true/false | 只有当某列所有非空值都是普通数字时,该列才会变成 Excel 数字:没有前导零、没有千分位分隔符或逗号小数,小数的有效数字不超过 15 位。只包含 true/false(大小写不限)的列会变成 Excel 的 TRUE/FALSE。日期和其他所有列都保持为文本。 |
| 表头行加粗 | 默认开启。第一行以粗体写出,内容始终是 CSV 的列名(文本)。 |
| 冻结表头行 | 默认开启。滚动时表头始终可见。 |
| 按内容调整列宽 | 默认开启。列宽依据前 2,000 行中最长的值确定(中日韩字符按两个字符计算),介于 8 到 60 个字符之间。 |
| 从右到左的工作表 | 从右到左显示工作表,A 列位于右侧,适合阿拉伯文、希伯来文或波斯文数据。单元格的值不会改变。 |
前导零、长数字和公式
直接用 Excel 打开 CSV 时,Excel 会自行猜测每个值的类型:00731 变成 731,20 位的订单号被四舍五入,1-2 可能变成日期。这个转换器自己写出每个单元格,Excel 就不会去猜。
- 无论哪种模式,前导零、邮政编码、电话号码和零件编号都保持为文本。只要某列中有一个值带前导零,数字识别就不会转换这一列。
- Excel 最多保留数字的 15 位有效数字。文本模式能完整保留更长的编号。开启识别时,如果某列的整数最多只有 16 位(不超过 9,007,199,254,740,991),仍会被转为数字,而 Excel 会把第 15 位之后的数字变成 0,所以银行卡号、账号等 16 位编号列请保持为文本。
- 以
=、+、-或@开头的单元格都写成文本,绝不会写成公式,所以打开工作簿时,CSV 中的任何内容都不会被计算或执行。 - CSV 中带引号的值内部的逗号、引号和换行,都留在同一个单元格里。首尾空格会保留。
- CSV 中的空值变成空单元格,而不是空字符串。
- 列名完全按原样使用。空白表头会变成
Column 3,重复表头变成name (2)。
常见问题排查
- Excel 中的 SUM 结果为 0。 这一列是文本。请选择 识别数字和 true/false 重新转换;如果仍是文本,请用 CSV 在线查看 在该列中查找
1,5、$12或n/a这样的值。 - 所有内容都在 A 列。 分隔符识别错了。请在 导入设置 中选择逗号、分号、制表符或竖线。
- 中文变成乱码,或重音字母显示为 é。 文件不是 UTF-8 编码。请在 导入设置 中选择它的编码:中文 Windows 版 Excel 保存的文件通常选 GB18030,旧版 Excel 的西文导出通常是 Windows-1252。
- 某个单元格超过了 Excel 的长度上限。 Excel 单元格最多容纳 32,767 个字符;工具会告诉你有多少个单元格超长,并且不会生成文件。请在 CSV 编辑器 中缩短它们,或改为导出 JSON。
- 文件超出了这个工具的处理范围。 Excel 转换适用于 25 MB、10 万行、250 列和 200 万个单元格以内的文件。请先 拆分 CSV,再分别转换。
限制与隐私
CSV 文件必须能在浏览器工作区中打开:最大 25 MB、10 万行、250 列和 200 万个单元格。这远在 Excel 自身 1,048,576 行 × 16,384 列的工作表上限之内。每次转换生成一个只含一个工作表的工作簿。
工作簿由开源的 write-excel-file 库在当前标签页的后台线程中生成,所以页面保持流畅,点击 取消 即可停止。CSV 文件不会发送到任何服务器。如果需要可打印的表格,请使用 CSV 转 PDF。
示例
一份库存文件,包含带前导零的 SKU、20 位条码、引号内的逗号和一个像公式的值,用 识别数字和 true/false 转换,工作表名称为 inventory,下面是从下载文件中读回的单元格。qty 和 unit_price 变成了数字,in_stock 变成了 TRUE/FALSE。barcode 因为有一个值长达 20 位而保持为文本,=SUM 的值也保持为文本。如果使用默认的 所有值都保留为文本,所有单元格都是文本,包括 12 和 34.90。
sku,barcode,description,qty,unit_price,in_stock,formula_like 00731,4006381333931,"Desk lamp, brass",12,34.90,true,=SUM(A1:A2) 00732,12345678901234567890,Cable tidy,,4.50,false,+44 20 7946 0958
Sheet "inventory" — row 1 bold and frozen Row 1: sku | barcode | description | qty | unit_price | in_stock | formula_like (text) Row 2: "00731" text | "4006381333931" text | "Desk lamp, brass" text | 12 number | 34.9 number | TRUE boolean | "=SUM(A1:A2)" text Row 3: "00732" text | "12345678901234567890" text | "Cable tidy" text | (empty) | 4.5 number | FALSE boolean | "+44 20 7946 0958" text
常见问题
为什么 Excel 中的数字显示绿色小三角?
使用默认的 所有值都保留为文本 时,像数字的值都是文本单元格,Excel 会把它们标记为“以文本形式存储的数字”。这样可以让编号保持准确。对于需要求和的数量和价格,请改用 识别数字和 true/false 转换。
日期会转换成 Excel 日期吗?
不会。日期按 CSV 中的写法以文本写出,例如 2026-03-01 或 03/01/2026,因为同样的文本在不同地区可能表示不同的日期。如果需要日期序列号,请使用 Excel 的“分列”功能或 DATEVALUE 函数。
能把多个 CSV 文件放进同一个工作簿的不同工作表吗?
不能。每个 CSV 都会生成各自只含一个工作表的工作簿。如果想先把多个文件合成一张表,请使用 合并 CSV 文件。