首页 > 解决方案 > 我有一个公式可以从单元格中的字符串中提取四位数 - 现在我希望它提取第二个实例或多个实例

问题描述

编辑:我应该说,与输出所有四位数字一样好或更好的是一个计数函数,它计算四位不间断数字的数量。

而且,无论是数字输出还是计数,我都需要将公式向下拉到几千行。感谢到目前为止所有回复的人,感谢您的帮助!


此公式查找字符串中的第一个四位数字 - 但我需要找到四位数字的第二个实例,或最后一个,或生成所有。只是不是第一个。有用的公式需要调整,感谢您的考虑: =MID(D2,FIND("----",SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(D2,"0","-"),"1","-"),"2","-"),"3","-"),"4","-"),"5","-"),"6","-"),"7","-"),"8","-"),"9","-")),4)

我已经尝试过从该线程的最佳答案调整的公式:Excel:如何仅提取单元格字符串中存在的 6 位数字?

对于单元格中的此文本: “测试 1 军事时间 1982 2008 2009 203401”

这个公式: =MID(D2,FIND("----",SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(D2,"0","-"),"1","-"),"2","-"),"3","-"),"4","-"),"5","-"),"6","-"),"7","-"),"8","-"),"9","-")),4)

生成这个:“1982”

我希望它输出20081982,2008,2009,2034或仅输出第一个结果1982之后的结果之一。

标签: excelexcel-formula

解决方案


D3中输入:

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(D2,"0","-"),"1","-"),"2","-"),"3","-"),"4","-"),"5","-"),"6","-"),"7","-"),"8","-"),"9","-")

D4中输入:

=MID($D$2,FIND("xxxx",SUBSTITUTE($D$3,"----","xxxx",ROWS($1:1))),4)

并向下复制:

在此处输入图像描述


推荐阅读