点赞再看,养成习惯;前事不忘,后事之师。
微信搜索【亦心Excel】关注这个不一样的自媒体人。
本文 GitHub https://github.com/hugogoos/Excel 已收录,包含Excel系统学习指南系列文章,以及各种Excel资料。
相信大家在看到这个题目的时候大家一定很疑问,这还不简单?感觉自己应该会好几种方法。我刚看到这个问题的时候也是这样想的,我就试了一下自己想到的方法,结果被一一打脸了。
下面来看看小编被打脸的过程吧。
我们希望如上图对身份证号码进行6-8-4格式进行显示。
小编第一个想到的就是单元格自定义格式。
首先选中数据C5:C9单元格区域,然后按快捷键「Ctrl+1」打开「设置单元格格式」对话框,选择「数字」选项卡下「自定义」,在类型中输入「000000-00000000-0000」格式。
然后来看看打脸结果:
设置后竟然毫无反应,为什么?为什么?小编疑惑了,还是小编已经不会用自定义格式了?小编决定再试试把电话号码格式化为3-3-4格式显示即000-000-0000。
成功了,可以啊,这是咋回事?于是小编查了关于单元格自定义的用法,官网中有这么一句话:「创建和构建自定义数字格式,以百分比、货币、日期等形式显示数字」。小编瞬间明白了,原来自定义格式主要是自定义数字格式的,而小编设置的身份证号因为有18位所以设置为文本格式,这样就导致自定义格式无法生效。而手机号是数字格式所以生效了。
好吧,虽然被打脸了,但是学到了:单元格自定义格式只能针对数字格式进行设置。
我们指定TEXT函数是可以格式化的,比如这里我们在C5单元格中设置公式「=TEXT(B5,"000000-00000000-0000")」,然后双击点击C5单元格填充柄快速填充完成操作。
又被打脸了,最后三位数字都是000。我们知道Excel中数字的精度是15位,当数字超过15位的时候一般都会用0代替,而身份证号是18位,所以后面3位变成0了。再结合上面自定义单元格格式的问题,那么TEXT函数应该也是针对数字格式的值使用的。果不其然,看看官网的解释:「TEXT 函数可通过格式代码向数字应用格式,进而更改数字的显示方式」。
我们都是知道Ctrl+E功能很强大,可以智能识别规律并快速填充。
貌似不用被打脸了,但是看完上面动态图的应该发现了一个小瑕疵,就是原数据变了以后,显示格式中的数据是不会变的,没法做到自动更新。当然对于只要显示格式数据的朋友这就不算问题了。
最后小编实在没辙了,只能想到最笨的方法了,而且必然会成功的方法。
我们在C5单元格中输入公式「=LEFT(B5,6)&"-"&MID(B5,7,8)&"-"&RIGHT(B5,4)」,这些函数前面文章都要详细介绍过这里就不多说了。三个函数分别是截取前面6位,截取中间8位,截取后面4位,然后通过&把它们和"-"拼接起来。最后双击点击C5单元格填充柄快速填充完成操作。
最后总算完美的解决了问题,而且还可以随着原数据自动更新。
小编的这次被打脸经历,让小编意识到基础知识的重要性,回头还是要好好学学基础知识啊。另外再简单的功能也不能想当然。
今天的分享到这里就结束了,但是学习的道路才刚刚开始,希望我们可以在学习的道路上不断地前进,坚持不懈。
如果你有感兴趣的功能,可以告诉小编哦,小编会为你写一篇相应的文章。当然是先到先写哈,我会列一个计划表,尽量满足大家的需求,所以如果下一篇不是你要的文章,请不要着急,可能就在下下篇。记得告诉小编你想学习的功能哦。
文章持续更新,可以微信搜索「 亦心Excel 」第一时间阅读,本文 GitHub https://github.com/hugogoos/Excel 已经收录,包含Excel系统学习指南系列文章,欢迎Star。