拆分具有特定格式的单元格

时间:2018-02-14 16:01:32

标签: excel excel-vba excel-formula vba

我正在尝试在单元格A2中查找并拆分输入,并且它需要在第二个句点之后以特定格式输出最多3位数,如果找到第3个句点则不需要输出任何内容。

我目前正在使用:

=IF(A2="","",TEXT(LEFT(A2,SEARCH(".",A2,1)-1),"00000")&"."&TEXT(MID(A2,SEARCH(".",A2)+1,SEARCH(".",A2,SEARCH(".",A2)+1)-SEARCH(".",A2)-1),"000000")&"."&TEXT(RIGHT(A2,LEN(A2)-SEARCH(".",A2,SEARCH(".",A2)+1)),"000"))

然而,这会在第二个周期后拉出所有数据。从公式我可以看出,我需要输出5位数的第一个数字,第一个输出后的下一个数字输出6位数,第2个输出后的数字输出3位数

简而言之,即使有人提出0.0.0.0.0.0.0.0,输出也应该看起来像00000.000000.000;但是,它目前正在捕捉第二期后的所有内容,所以实际上它实际上看起来像00000.000000.0.0.0.0.0.0

我可以添加任何内容,以便在输出达到第三个时间后切断输出吗?我会使用常规的分割功能,但是当人们输入数据时,有时他们会把0000.000000.000.0.0.0.0.0放在00000.000000.000.0.0.0.0,有时他们会把0000.000000.000。许多不同的组合,但分离点始终是句点,最终结果总是需要5digits.6digits.3digits

如果我需要进一步澄清,请告诉我。

1 个答案:

答案 0 :(得分:1)

我认为以下内容可以满足您的需求。

=TEXT(LEFT(A2,FIND(".",A2)-1),"00000")&"."&TEXT(MID(A2,FIND(".",A2)+1,FIND(".",A2,FIND(".",A2)+1)-FIND(".",A2)-1),"000000")&"."&TEXT(MID(A2,FIND(".",A2,FIND(".",A2)+1)+1,3),"000")