怎么在Excel中给不足位数的数字前面补0?方法二你肯定想不到
嗨咯大家好,我是亮仔
在工作中经常会遇到需要对数字补齐位数的情况,比如图中所示,需要把员工的工号变成统一的8位数,不足的用0补足
在Excel中我们怎么实现呢,今天亮仔将分享2个方法
方法一:组合函数判断补位
【函数介绍】
这个方法会用到3个函数(IF,LEN,REPT)简单了解下函数的参数就行
IF(logical_test,value_if_true,value_if_false),简单翻译就是IF(测试条件,结果1,结果2):如果满足“测试条件”则显示“结果1”,如果不满足“测试条件”则显示“结果2”。
LEN(text):得到字符串的长度
REPTREPT(text,number_times),text:表示需要重复显示的文本,number_times:表示指定文本重复显示的次数
【函数思路】
我们已经了解了上面3个函数的基本含义,那我们就有一定的解题思路了
1、我们用LEN函数求出工号的字符长度【LEN(A2)】
2、用IF判断工号字符长度是否小于8(8位工号)【LEN(A2)<8】
3、如果工号(A2)字符长度小于8就使用REPT函数重复0,用8-工号的字符长度来决定重复次数并用'&'连接原工号【REPT(0,8-LEN(A2))&A2】
4、如果工号(A2)字符长度大于或等于8就返回原工号【A2】
【最终公式】
根据我们上面的思路,我们将每个步骤拼接起来就是一个完整的函数
=IF(LEN(A2)<8,REPT(0,8-LEN(A2))&A2,A2)
【效果】
GIF
方法二:单元格格式补位
这个方法最主要的就是需要了解自定义单元格格式代码,今天只分享补位需要的单元格格式代码【00000000】,我们先直接上效果,看完之后再解释原理
GIF
我们可以看到在单元格自定义格式里直接输入【00000000】,然后看起来就实现了我们想要的结果,原理是什么呢
这里的0的意思是数字占位符,当数字比代码符少时,用0补足,多时显示实际数字
当我们鼠标移到工号时,我们会发现单元格编辑栏中实际还是原来的数字
其实我们改变的只是这个单元格值的显示方式,相当于是给数字化了个妆,让你看起来像其他的,实际上还是自己
如果我们要变成将单元格的值实际发生变化怎么办呢,其实我们只要使用text函数就可以了
【函数介绍】
TEXT(value,format_text)
Value 为数值、计算结果为数字值的公式,或对包含数字值的单元格的引用。
Format_text 为“单元格格式”对话框中“数字”选项卡上“分类”框中的文本形式的数字格式。
【函数思路】
1、写出单元格格式代码【00000000】
2、使用text函数进行转换【TEXT(A2,'00000000'】
【效果】
GIF
现在我们看数字已经是8位数,不在是原来的数字