打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
text+rept生成格式重复的字符串(糖葫芦不要钱)

1.将A2显示为B2的结果

如下图所示,将123456789变为001,002,003,004,005,006,007,008,009。在解决问题前,我们先要认识和了解问题。观察一下可以发现结果的字符串是相同的格式重复了好几次。所以我们先把格式确定一下,然后再按次数重复就可以了。在B2单元格输入公式=MID(TEXT(A2,REPT("\,\0\00",9)),2,99),完成。

先来看rept的第1参数"\,\0\00",它就是格式的基本组成部分,\是强制将它后面的一个字符显示为文本,比如逗号在text的格式代码中代表的是千位分隔符,但是在逗号前面加个\就把逗号强制看作文本逗号;同样的在0前面加\就把0当作文本0,而不是占位符。这样的话,在"\,\0\00"中,只有最后一个0是占位符,其他的都被强制显示为文本,就相当于""",00""0"。所以只会在最后一个0占位。

REPT("\,\0\00",9)这部分就是将基本格式代码重复9次,TEXT(A2,REPT("\,\0\00",9))这部分就是用123456789来占位,结果为",001,002,003,004,005,006,007,008,009"。这样的话最前面多了一个逗号,所以用mid从第2位开始提取99位。

另外一种写法就是用双引号,公式为=MID(TEXT(A2,REPT(""",00""0",9)),2,99)

2.用123456789生成下面的楼号

如下图所示,用123456789生成楼号,比如1楼就是101,102,103,104,105,106,107,108,109。2楼就是从201开始到209结束,以此类推。这个题目是上个题的升级版,同样是在基本格式的最后一个0上占位,但是多了个楼号的条件。在B5单元格输入公式=MID(TEXT(A$5,REPT(""","&ROW(A1)&"0""0",9)),2,99),向下填充,完成。

首先用row函数生成楼号,如下图所示。

=""","&ROW(A1)&"0""0"这部分是构建基本的格式代码,只让最后一个0占位,其他的符号都强制显示为文本,所以要用双引号将它们包裹。

=REPT(""","&ROW(A1)&"0""0",9)这部分是将基本的格式代码重复9次,如下图所示,看起来会有点晕,密集恐惧症。不过只要你理解了它的意思就可以了,不需要看清楚。

=TEXT($A$5,REPT(""","&ROW(A1)&"0""0",9))这部分就是用text设置格式,把123456789分别占据基本格式代码的最后一个0。最后用mid从第2位提取99位,完成。

3.将"*"号前后的数字统一补足4位数,不足4位的前面补"0"

如下图所示,将A列的数据变为B列的结果。思路是先将星号之间的数字提取出来,然后补全4位,再连接起来,最后用text设置格式。在B19单元格输入公式=MID(TEXT(SUM(MID(SUBSTITUTE(A19,"*",REPT(" ",50)),ROW($1:$4)*50-49,50)*10^{12;8;4;0}),REPT("\*0000",4)),2,99),按ctrl+shift+enter三键结束,向下填充。

SUBSTITUTE(A19,"*",REPT(" ",50))这部分就是用substitute将星号替换为50个空格;MID(SUBSTITUTE(A19,"*",REPT(" ",50)),ROW($1:$4)*50-49,50)这部分是用mid将空格隔开的4个数字分别提取出来,这个套路以前说过多次,就不再详细说明。

MID(SUBSTITUTE(A19,"*",REPT(" ",50)),ROW($1:$4)*50-49,50)*10^{12;8;4;0}这部分是用mid提取后的结果乘以10的12次方,8次方,4次方,0次方。因为4位一组,然后用sum求和,就相当于把4个数字补全后连在一起。下图是sum返回的结果。

=TEXT(SUM(MID(SUBSTITUTE(A19,"*",REPT(" ",50)),ROW($1:$4)*50-49,50)*10^{12;8;4;0}),REPT("\*0000",4))这部分就是用text+rept生成格式重复的代码,结果如下图所示。最后用mid从第2位提取99位。

如果你有其他的方法,欢迎在留言区写出你的答案,让我们一起学习。

文件链接:

https://pan.baidu.com/s/1oMfYIXF2OZJkH07K2T_vdA

提取码:w4tw

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
数据录入不规范,怎能保住发际线
【函数】提取三兄弟:LEFT、MID、RIGHT
有点难度的求和
精妙的函数公式,思路启迪。
将字符串中的数字相加求和
将带分隔符的字符串拆分成数组的Excel通用公式
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服