在破折号 (-) 之后但在数字之前添加前导 0
Add leading 0 after the dash (-) but before the numbers
我有一个公式,如果数字 1-9 没有数字,则在数字 1-9 前添加一个 0。
旧.................新
D-8 .....................D-08
FE-09 .....................FE-09
I-18 .....................I-18
P-1 .....................P-01
FG-08A............FG-08
=LEFT(A1,FIND("-",A1))&TEXT(MID(A1,FIND("-",A1)+1,2),"00")
但是,对于像FG-08A这样的值,我不希望它在最后清除A。所以如果是FG-08A,结果就是FG-08A(保持不变)。如果它是 FG-8A,它将是 FG-08A(添加前导 0 但保留 "A")。
添加结尾字母检查:
=LEFT(A1,FIND("-",A1))&TEXT(MID(A1,FIND("-",A1)+1,ISNUMBER(--MID(A1,FIND("-",A1)+1,2))+1),"00")&IF(ISERROR(--RIGHT(A1)),RIGHT(A1),"")
如我的评论所述,如果您从来没有超过两个连续的数字,并且这些数字永远不会是 00
,您可以使用:
=SUBSTITUTE(SUBSTITUTE(A1,"-","-0"),"00","0")
我有一个公式,如果数字 1-9 没有数字,则在数字 1-9 前添加一个 0。
旧.................新
D-8 .....................D-08
FE-09 .....................FE-09
I-18 .....................I-18
P-1 .....................P-01
FG-08A............FG-08
=LEFT(A1,FIND("-",A1))&TEXT(MID(A1,FIND("-",A1)+1,2),"00")
但是,对于像FG-08A这样的值,我不希望它在最后清除A。所以如果是FG-08A,结果就是FG-08A(保持不变)。如果它是 FG-8A,它将是 FG-08A(添加前导 0 但保留 "A")。
添加结尾字母检查:
=LEFT(A1,FIND("-",A1))&TEXT(MID(A1,FIND("-",A1)+1,ISNUMBER(--MID(A1,FIND("-",A1)+1,2))+1),"00")&IF(ISERROR(--RIGHT(A1)),RIGHT(A1),"")
如我的评论所述,如果您从来没有超过两个连续的数字,并且这些数字永远不会是 00
,您可以使用:
=SUBSTITUTE(SUBSTITUTE(A1,"-","-0"),"00","0")