批量导出身份证号和姓名(系统导出的身份证号码后三位自动变)
批量导出身份证号和姓名(系统导出的身份证号码后三位自动变)第二步:将"身份证号码"列改为"文本"格式。第一步:通过数据查询导入csv文件。当我们用Excel直接打开csv文件的时候,Excel认为这是一个18位数的数值,所以就会默认将后三位变成"000"。一旦后三位变成了"000"的话,那么这个操作是"不可逆"的。也就是说,这个时候即使将单元格格式改为"文本",这串数字也一样"回不去"了。所以我们不能直接用Excel打开这个csv文件,而是用Excel中的"数据查询"将csv文件的数据导入,将身份证列的格式设定好为"文本"之后再上载到Excel中。在Excel工作表中将身份证列的格式从"常规"再次改成"文本",即可确保身份证号码的完整呈现以及不会发生格式变化。
背景:从公司的系统中导出人员信息是csv文件,用Excel打开之后,发现身份证号码默认使用"科学计数法"格式,后三位变成了"000"。
超过15位的数值默认变“0”
显然这不是我们想要的结果,这个问题应该怎么处理呢?
原理:Excel认为数字超过15位之后,那么15位之后的数值就变得没有意义了。这就好比我们说会"马云身家581亿美元",但是如果说"马云身家581亿零789美元",这样后面的"789美元"就显得多余了,是没有意义的。
解决方法:当我们用Excel直接打开csv文件的时候,Excel认为这是一个18位数的数值,所以就会默认将后三位变成"000"。一旦后三位变成了"000"的话,那么这个操作是"不可逆"的。
也就是说,这个时候即使将单元格格式改为"文本",这串数字也一样"回不去"了。
所以我们不能直接用Excel打开这个csv文件,而是用Excel中的"数据查询"将csv文件的数据导入,将身份证列的格式设定好为"文本"之后再上载到Excel中。在Excel工作表中将身份证列的格式从"常规"再次改成"文本",即可确保身份证号码的完整呈现以及不会发生格式变化。
第一步:通过数据查询导入csv文件。
第二步:将"身份证号码"列改为"文本"格式。
第三步,上载数据到Excel工作表。
第四步,将"身份证号码"列改成"文本"格式。
至此,这个曾经困扰很多人的“身份证号码”问题就解决了。
需要说明一下,这里用的数据查询,实际上是Excel2016专业增强版自带的一个PowerBI组件Power Query。Office2019/365都默认自带这个组件。
如果你安装的是Office2013或者Office2010的话,需要到微软官网免费下载并安装这个组件哦。
如果觉得文章对你有用,点个赞呗。
我是微软认证讲师MCT,关注我,一起玩Office。