c语言前导0怎么添加,添加前导0,难倒一大堆函数高手【Excel分享】

原标题:添加前导0,难倒一大堆函数高手【Excel分享】

165582900_753914

a138ffaa19de92dcb9697d10fa6532a5.png

添加前导0,难倒一大堆函数高手

大家好,今天和大家分享“添加前导0,难倒一大堆函数高手”,题目的意思是这样的,每个单元格里的乘号*之间,不够4位的添加0补位,补到4位,如下图,根据A列数据,得到B列效果,大家先不要看我的解法,自己想几分种,看自己能否有更好的解法。在留言处留言,我们大家一起学习。如果你觉得自己函数还可以,认为自己是函数高手更应该先想想,自己有什么好的解法,解不出来再看我的解法。函数初级,中级的朋友,完全看懂可能有点难度,不过可以看看我的解题思路,多少可以学到一点,你加权的知识点,text函数补前导0,!和强制显示,把这些知识点慢慢学会,组合起来就是强大的公式了。

bb953fccb73c892bf77f83877da0b88f.png

一、动画操作效果

d27416fe9453283bd3c32178b7d13a70.gif

二、公式截图

19a9b6c7defd79cbaf19c9b3201981cd.png

三、公式

=IF(A1="","",TEXT(LEFT(A1,FIND("*",A1)-1),"0000")&TEXT(SUM(TRIM(MID(SUBSTITUTE(MID(A1,FIND("*",A1)+1,99),"*",REPT(" ",99)),ROW($1:$3)*99-98,99))*10^({8;4;0})),REPT("*0000",3)))

四、公式解释

首先我解释,为什么要用二个text,因为excel超过了15位,15位以后就变成0,所以要分二段处理

find找第一个乘号的位置,然后减1,从左提取,用text函数来添加前导0

FIND("*",A1)+1找到第1个乘号的位置,然后用mid提取,把第1个乘号后面的提取出来

SUBSTITUTE(MID(A1,FIND("*",A1)+1,99),"*",REPT(" ",99))把乘号替换成99个空格,目的是拉大两数字之间的距离

MID(SUBSTITUTE(MID(A1,FIND("*",A1)+1,99),"*",REPT(" ",99)),ROW($1:$3)*99-98,99),从3个位置开始提取,{1;100;199},从第1个位置,从第100个位置,从第199个位置,这样就把数据按乘号分隔,分别提取出来,由于得到数据前后有空格,用trim把前后空格去掉。

不足四位的补前导0,是用加权的方法来补,目的是为了后面又要把乘号补起来。

10^({8;4;0}把得到3个数据分别与10^8; 10^4,10^0相乘再相加得到一个求和结果,再用text函数来加中间的乘号

REPT("*0000",3)返回的是"*0000*0000*0000",为什么乘号前面还要加一个,这个是强制显示*,也可以用这个!来强制显示乘号*,REPT("!*0000",3)返回的是"!*0000!*0000!*0000"

最后用if来屏蔽没有数据不显示。

五:新班开班通知

8月16日函数初级开新班,上课时间周一,周三、周五晚上8点到10点,YY教室在线听课,学费100元,共9节课,想学的加我微信18664243619咨询

165582900_753914

48f62a02e0c7ece3dcf031c1fac6d5ee.png

165582900_753914

165582900_753914

六、近10期文章:大家可以用手指点击就可以查找看了,如果觉得不错,记得分享到你的朋友圈返回搜狐,查看更多

责任编辑:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值