先把丑话说前面:已经被改掉的号,救不回来
很多人以为换个格式就能变回原来的号码,结果改完还是那串000。原因很实在,Excel的数字精度只有15位有效数字,身份证是18位,超出的部分它压根没记住,直接拿0补齐。你看到的尾部三个0不是显示问题,是数据本身就丢了。
这时候唯一有效的后悔药是立刻按Ctrl+Z,或者回到原始名单、原始系统里重新导出一份。什么都修补不了已经变成0的位。
正确顺序是:先设文本,再往里输
选中要放身份证的那一整列,在「开始」选项卡右上角找到数字格式下拉框,选「文本」。顺序不能反,一旦数字已经进去了再改格式,前面丢的三位不会回来。
设完之后左上角会冒出一个绿色小三角,那是它在提示这格是文本性质,不用理会。输完之后顺手验一下,在旁边空列写 =LEN(A2),回车出来应该是18。不是18的就单独拎出来核对,多半是多粘了个空格或者少一位。
只输一两个号的偷懒办法
在号码前面先敲一个半角单引号,也就是键盘上Esc下面那个键,再输数字。Excel会把后面这串当成文本收着,引号本身不显示,只在编辑栏里能看到。
从CSV或者网页数据表粘过来,最容易翻车
因为粘贴这一步数字就已经被处理掉了。别用Ctrl+V硬粘,走「数据」→「获取外部数据」→「自文本/CSV」,在预览窗口点一下身份证那一列,把列数据格式改成「文本」再加载。老版本Excel会弹文本导入向导,走到第三步,选中那一列,列数据格式选文本,效果一样。
哪些号码要一起保护
手机号11位一般还好,15位以上的就容易出事。银行卡号、纳税人识别号、快递单号、营业执照号,凡是长串数字,一律按文本处理。真要长期做这种名单,最好在模板里就定死规矩:所有编号列统一走文本格式,省得每个人填一次靠一次运气。
