暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Excel公式练习86:找出字符串中最大的数字

完美Excel 2021-07-19
952

学习Excel技术,关注微信公众号:

excelperfect


本次的练习是:从一个由文本和数字组成的文本字符串中,提取出连续最长的数字。如下图1所示,在单元格B2中包含一个由文本和数字组成的字符串,很显然,其最长数字是9367

1

 

如何使用公式获得结果?

 

解决方案

在单元格C2中输入数组公式:

=MAX(IFERROR(MID(B2,ROW($A$1:$A$50),COLUMN($A$1:$Z$1))*1,""))

结果如下图2所示。

2

 

公式解析

在公式中,使用了MID函数,通常,我们使用MID函数如下:

=MID(B2,5,2)

返回单元格B2中从第5个字符开始的2个字符,在图1的示例中,返回“2E”。

 

公式中共3个部分:单元格引用,起始位置,要提取的字符数。

 

然而,现在要从单元格B2内的每个起始位置提取多个值!

 

在上面解决方案的公式中:

ROW($A$1:$A$50)

创建了50个起始位置。

 

COLUMN($A$1:$Z$1)

对于每个起始位置,依次提取1个、2个、……最多到26个字符。

 

MID(B2,ROW($A$1:$A$50),COLUMN($A$1:$Z$1))

的结果如下图3所示。

3

 

由于我们仅需要纯数字,例如662622,等等。于是,对MID函数获得的数组乘以1,这样,数字文本转换成数字,而其它则为错误,如下图4所示。

4

 

IFERROR函数将所有错误值转换为空,这样只剩下数字,如下图5所示。

5

 

MAX函数从这些数字中提取最大值,得到结果:

9367

 

小结

ROW函数和COLUMN函数一起使用时,会创建一个二维数组。

undefined
欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。

欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料。

文章转载自完美Excel,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论