Excel怎么统计文字后面的数字

当我在A2中输入:小明12、小贾14、小孙43、小刚19,在B2中输入小明时,在C2中自动出现小明后面的数字,当B2中改为小贾时,C2中也自动更改为小贾后面的数字14,求高手指点……

把下面的公式复制到C2单元格即可。

=IF(ISERR(FIND("、",RIGHT(A2,LEN(A2)-FIND(B2,A2)+1-LEN(B2)))),RIGHT(A2,LEN(A2)-FIND(B2,A2)+1-LEN(B2)),LEFT(RIGHT(A2,LEN(A2)-FIND(B2,A2)+1-LEN(B2)),FIND("、",RIGHT(A2,LEN(A2)-FIND(B2,A2)+1-LEN(B2)))-1))

 

说明:

如果A2单元格内容中找不到B2单元格内容,C2返回错误值#VALUE!;否则返回B2单元格对应的数字。

 

备注:

一般的,不能像你这样设计使用表格,不符合表格设计的习惯和特点。而是应这样设计:

追问

呵呵,谢谢您的答案与见解。我这样设计表格,是也因为一个格子里要有很多项目,而每个项目又是独立的数量,这样设计是挺少见的……您的这个答案挺好的,不过不是我这题想要的结果……不过还是要谢谢您……

追答

嗯。。看了你的所有追问以及其他知友的回答,虽然说下面的公式很复杂,但个人觉得最合适了!
为什么说最合适呢?比如A2单元格中的名称为:小明12、小贾14、大明63、小刚19
那么,当在B2中输入“明”,用其他知友的公式会返回最先出现的明后面的12,
而不是大明后面的63 。显然,这个结果不够精确!
而我下面的公式,只有准确输入统计项目后,才会出现正确的统计数字,否则全部返回0
=IF(ISERR(FIND(B2,A2)),0,IF(AND(IF(FIND(B2,A2)>1,IF(MID(A2,FIND(B2,A2)-1,1)="、",1,0),1)=1,IF(LEN(MID(A2,FIND(B2,A2)+LEN(B2),1))=LENB(MID(A2,FIND(B2,A2)+LEN(B2),1)),1,0)=1),IF(LEN(RIGHT(A2,LEN(A2)-FIND(B2,A2)-LEN(B2)+1))=LENB(RIGHT(A2,LEN(A2)-FIND(B2,A2)-LEN(B2)+1)),RIGHT(A2,LEN(A2)-FIND(B2,A2)-LEN(B2)+1),MID(A2,FIND(B2,A2)+LEN(B2),FIND("、",RIGHT(A2,LEN(A2)-FIND(B2,A2)-LEN(B2)+1))-1)),0))

当然,如果你的要求不像上面我提到的那么高,可以用下面的公式:
=IF(ISNA(LOOKUP(,-MID(A2,FIND(B2,A2)+LEN(B2),ROW(1:9)))),0,-LOOKUP(,-MID(A2,FIND(B2,A2)+LEN(B2),ROW(1:9))))
用下面的这个公式需要注意的是:
应当把两处ROW(1:9)中的数字9更改为不低于你要统计数字的最高位数!
比如A2单元格中的名称为:小明12、小贾14、小孙63112864570、小刚19
上面小孙后面的数字63112864570共有11位
那么,就要把两处ROW(1:9)更改为ROW(1:11)
当然,你也可以改成更高的位数,比如改为:ROW(1:100)

至于公式中函数的解释及具体用法,解释起来是非常复杂和费事的!
建议你在EXCEL提供的帮助中搜索学习,里面有语法和示例,简单易懂。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-07
C2公式下拉:
=MID(A2,FIND(B2,A2)+2,FIND("、",A2&"、",FIND(B2,A2)+2)-FIND(B2,A2)-2)追问

这个答案默认了第一个,不填也有……不过还是谢谢您……有可能以后有用……

第2个回答  2013-07-07
C2公式

=-LOOKUP(,-LEFT(REPLACE(A2,1,FIND(B2,A2)+LEN(B2)-1,),ROW($1:$9)))追问

=-LOOKUP(,-LEFT(REPLACE(A2,1,FIND(B2,A2)+LEN(B2)-1,),ROW($1:$9)))麻烦您,能不能解释一下这个公式的意思呀,我是Excel的爱好者,也是初学者,拜托了……

第3个回答  2013-07-07
=-LOOKUP(,-MID(A2,FIND(B2,A2)+LEN(B2),ROW($1:9)))追问

如果当我在B2中输入小亮,但A2中又没有小亮,怎么才能不显示错误提示,而显示的为零呢??

追答

=-LOOKUP(,-(0&MID(A2,FIND(B2,A2&B2)+LEN(B2),ROW($1:9))))

第4个回答  2013-07-07
先分列,再提取
相似回答