1,380字
6–9 分钟
作者:小北童鞋
来源:芒种学院(ID:lazy_info)
谈到 Excel 中最常用的函数,MAX函数肯定有一席之位,这可以说是表格中最简单的函数了。函数可以传一个/多个参数,可以传单元格/区域,但是目的只有一个,就是计算最大值。
但是MAX函数真的只能计算最大值么?No,MAX函数的技巧非常多,来做一个简单的测试看下你对这个函数的理解
- 中文和数值进行运算如何利用
MAX忽略错误? - 合并单元格序号如何利用
MAX进行填充? - 交叉行如何利用
MAX函数填充连续序号? - 交叉查询如何利用
MAX函数提升效率? MAX函数可以筛选日期数据么?
经过上面的灵魂测试,我发现了我用的是假的 MAX 函数。这些功能还能使用 MAX 函数来实现?
今天小北就来给大家分享 4 个MAX函数的高级用法,带你轻松提升效率~
中文/数值运算忽略错误
由于表格设计的不规范,在进行运算的时候,很容易将中文和数值之间进行运算,这样就会出现#VALUE!错误,例如:

想要忽略错误一般情况下都使用IFERROR的写法,其实利用MAX函数会更简单,因为MAX传入的参数是中文/布尔值,那么则不会参与运算。
所以可以将公式改成两个MAX函数相乘,如下:

这就是MAX函数的第一个高级功能,忽略文本和逻辑值的特性,也就是说你的参数存在文本/逻辑值,则不会参与计算。
合并单元格序号填充
在实际工作中,经常需要将单元格合并处理后归为一类,但是在某些情况下对单元格进行了合并,如果这个时候还想下拉填充序号,就会出现各种奇怪的提示,就像下面这种:

这个时候也可以巧妙利用MAX函数来实现,选中所有的合并单元格区域后,输入公式「=MAX($A$1:A1)+1」,然后按「Ctrl+Enter」即可快速完成填充。

这里利用了 2 个小技巧,一个是MAX函数忽略中文的特性,另外一个是选中合并单元格录入数据,按Ctrl+Enter可以批量填充。
隔空行填充连续序号
如果来了解下隔空行填充连续序号的意思,例如下图,如果存在空行,则中间空行不进行序号填充,需要如何实现呢?

其实很简单,利用IF+MAX函数就能轻松搞定。
在A2单元格录入公式「=IF(B2="","",MAX($A$1:A1)+1)」,然后下拉拖动。

这也是隔行填充连续序号的一个应用小技巧,用IF函数判断是否为空。
如果为空则输出空,否则计算上一个MAX的累加,然后加1即可。
MAX交叉查询
谈到「交叉查询」,如果使用INDEX+MACTCH函数来实现,函数整体会非常长。
例如下方想根据「姓名」和「季度」来查询销量:

这个使用也可以轻松利用MAX函数来实现,我们在I2单元录入一下公式:=MAX((A2:A18=G2)*(B1:E1=H2)*B2:E18)。
然后按Ctrl+Shift+Enter键,因为这是一个数组公式,就可以轻松利用MAX实现交叉查询的效果。

这里用到了MAX函数的数组公式,输入多个条件进行相乘。
如果条件成立,那么计算出来的结果就不为0,否则就是0,最后通过MAX直接取出最大值即可。
同样的话,如果使用VLOOKUP筛选出来的结果是数值,那么也可以使用MAX来代替,并且理解起来也会非常简单,例如:

至此,4 个MAX函数的高级用法就分享完了,是不是看着非常简单,但是效率非常高呢?最后希望上面这些技巧能真正帮到你~
如果你还有其他关于「Excel函数」的使用技巧,可以在文章下进行留言哦~
© 版权声明
文章版权归作者所有,未经允许请勿转载。




这个忽略错误的写法比IFERROR清爽多了,尤其嵌套的时候。
hhh我之前还以为MAX只能求个最大值,太局限了。
感觉还行,不过正式表还是不敢乱用数组公式,怕同事不会改。
合拼单元格填序号这招太实用了,省了好多事。
话说WPS里数组公式是不是得手动按三键才能生效?
之前搞报表老遇到文本混数值,IFERROR写了好几层,这下能省事了。
交叉查询那个写法确实短,但要是有负数会不会出问题啊?
原来MAX还能当筛子用,这思路我真没想到过😂
感觉还行。
以前公司那个老表就是一堆合并单元格,每次要加行都得手动重排序号,弄得我每天都要花半小时在这些破事上。
其实这种逻辑用SUMPRODUCT也能实现,但MAX确实写起来快,省事。