怎样在excel中同一个单元格中用公式提取最大值的字母
来源:百度知道 编辑:UC知道 时间:2024/06/04 17:59:31
感谢各位回答问题,特别是shuhua0715,公式完全正确,还有loveruby521 ,提示我是数组公式,要输入完公式按shift+ctrl+回车,公式两边出现大括号才对 ,不然我肯定错了,谢谢所有回答问题的人。
另外,还有个问题,结果出来了,每个人有五个项目,每个项目的等级有ABCD四项,现在要求出每个人的等级的项目个数,比如张三:AABCC,就是2A1B2C,李四:AABBB,就是2A3B,特别要强调的是,结果是先A后B,然后C,最后D的顺序,而不是谁的数目多,谁就在前面,从李四的例子就可以看出来了,询问一下公式,谢谢
pwaters的答案没问题,但可简化:
=MID(A1,FIND(LOOKUP(30,IF(FIND(ROW($1:$30),A1),ROW($1:$30))),A1)+LEN(LOOKUP(31,IF(FIND(ROW($1:$30),A1),ROW($1:$30)))),1)
数组公式。
loveruby521的公式有缺陷,比如不能处理 5A8B
这个excel是无能为力了,因为涉及到了数组的判断和筛选,需要用程序来实现了
假设你的数字字母组合在A列,A1开始
在B1输入:
=MID(A1,FIND(LOOKUP(100,IF(FIND({1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30},A1)>0,{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30},0)),A1)+LEN(LOOKUP(100,IF(FIND({1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30},A1)>0,{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30},0))),1)
下拉.
设数据在a1
在b1输入
=MID(A1,LEFT(MAX(LOOKUP(40,--MID(A1,ROW($1:$7),2),{33,44,55,66,77,88,99}),LOOKUP(40,--MID(A1,ROW($1:$9),2),ROW($2:$9))),1),1)
数组公式,输入完公式按shift+ctrl+回车,公式两边出现大括号才对
默认数据长度最大为9位,你可以改
学习来的。
按楼主的例子:
18A3B