现象很固定:选中整列看状态栏,只有计数没有平均值;SUM 下去结果是 0;单元格左上角有个绿色小三角。这不代表识别错了,它代表这一格存的是文本而不是数值。
站内为什么默认写成文本
表格类输出的写入规则是:只有能无损存成数字的内容才存为数值,判断条件是没有前导零、且不超过 15 位有效数字。剩下的全部按文本写。
这条规则挡掉的是不可逆的损失。银行账号十六七位,按数值存超出精度的尾数会被抹成 0,事后没法还原;合同编号常以 0 开头,转数值后前导零直接消失;身份证号末位是 X 时更会被判成非法数字。这些列变成文本是保护,不是缺陷,看到绿三角就一把梭转数值,反而把可用数据做成废数据。
哪些列该转,哪些绝对别碰
该转的只有一类:你确定要拿去做加减的纯数量与金额。判定方法:把该列筛一遍,出现空格、逗号以外的非数字字符就整列退回人工处理,那说明列里混进了单位或备注。
绝对不要转的:账号、卡号、身份证、手机号、税号、发票号码、工号、带前导零的序号、单据编号。这些列的作用是精确匹配,不是求和。
怎么发现转错了
- 尾数变成 0:账号最后几位齐刷刷是 0,是精度截断的典型形态。这种丢失不可回退,只能重新识别一次。
- 显示成科学计数法:出现 E+ 形式,说明已经被当大数处理,立刻撤销。
- 前导零不见了:序号从 007 变成 7,对账时按字符串匹配全部落空。
正确的转换动作
在 Excel 里做,一次只动一列。三种方式风险不同:
- 点绿三角提示菜单里的转换为数字——最保守,只改真正能改的格。
- 空单元格输入 1,复制后对该列选择性粘贴乘,强制文本变数值。列里有空行时会把空行也变成 1,慎用。
- 分列向导不改参数一路到底,能快速把整列重新解析。
转完必须闭环核对:转换前后各求一次和要相等;更要紧的是再走一遍自算校验,单价乘数量应等于该行金额,各行之和应等于页面合计。凡不等,回原图裁局部放大看,别改数字。
想确认某格到底是文本还是数值,把格式切成常规看一眼即可。本站另有 CSV转换 在浏览器本地处理文本型表格,文件不上传服务器,但它读不了二进制的 XLSX,要先在 Excel 里另存为 CSV。
什么时候不该转
编号列一行都别动。混合列(金额和单位挤在一格)不要硬转,那是识别串列的信号,正确做法是回去数行列数或重拍重做,见 表格识别后的验收清单。想弄明白这套写入规则的完整取舍,看 识别结果里数字为什么存成文本。
底线一句话:文本导致的加不了总是可见的麻烦,数值导致的丢位是不可见的错误。宁可留着一堆绿三角手动处理,也不要让账号和编号进数值区。