excel如何讲符号替换成数字,并且固定数字的位数

例如:1211-1-1 ,1211-12-11 把他们替换成12110000100001 ,12110001200011
数字格式都是4/5/5的, - 这个符号加后面的数字,让他变成一个5位数,但 - 后面的数字不确定是单位还是双位。跪求大神指点,在线等,急

假设数据是在A2开始的A列,则可在B2单元格输入公式:
=LEFT(A2,4)&TEXT(LEFT(REPLACE(A2,1,5,""),FIND("-",REPLACE(A2,1,5,""))-1),"00000")&TEXT(REPLACE(REPLACE(A2,1,5,""),1,FIND("-",REPLACE(A2,1,5,"")),""),"00000")
复制并下拉,即可追问

大神在么?我周五提了个关于EXCEL的问题,没解决,具体是这样的,有一个编号列,比如 1001 , 1001-1 , 1001-12 , 1001-1-1 , 1001-1-12,1001-1-1-1,1001-1-1-12,这种的,要全部替换成4/5/5/5格式的数据,比如 10010001,100100012,10010000100001等,这样的如何去弄?拜谢大神,急,重谢

追答

公式改为:
=LEFT(A2,4)&IF(LEN(A2)<7,TEXT(REPLACE(A2,1,5,""),"00000"),TEXT(LEFT(REPLACE(A2,1,5,""),FIND("-",REPLACE(A2,1,5,""))-1),"00000")&TEXT(REPLACE(REPLACE(A2,1,5,""),1,FIND("-",REPLACE(A2,1,5,"")),""),"00000"))
复制并下拉,即可。

追问

大佬,那如果现在要是反过来呢?我看了好久你这个公式,还是没怎么理解,就是同样的情况,把中间的0变成-,可以么?比如100100001→1001-1,100100021→1001-21,10010002100001→1001-21-1,这样的最多4位 (1001-21-1-1),可以做么?

追答

反过来,A2单元格是4位、9位或14位的数字,则B2的公式改为:
=LEFT(A2,4)&IF(LEN(A2)<5,"","-"&--MID(A2,5,5)&IF(LEN(A2)<10,"","-"&--REPLACE(A2,1,9,"")))
复制并下拉,即可。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-11-24
假设数据在A列,B1用公式:
=LEFT(A1,FIND("-",A1)-1)&TEXT(MID(A1,FIND("-",A1)+1,FIND("A",SUBSTITUTE(A1,"-","A",2))-FIND("-",A1)-1),"00000")&TEXT(RIGHT(A1,LEN(A1)-FIND("A",SUBSTITUTE(A1,"-","A",2))),"00000")
下拉。本回答被提问者采纳
第2个回答  2017-11-24
可以,如果只是你举得例子这两种。上传附表我帮你替换
第3个回答  2021-04-30
=REPLACE(SUBSTITUTE(TEXT(REPLACE(A1,2,1,9),"e-mm-dd"),"-","000"),1,4,LEFT(A1,4))
相似回答