Excel实现自定义函数MAXIF和MINIF满足条件最值
我们知道Excel中有AVERAGEIF,SUMIF,COUNTIF,条件函数,但是就是没有MAXIF或者MINIF,这样在求满足一定条件的最大值,或者求满足指定条件的最小值时,就很不方便。本文分享给大家如何使用数组公式(不需使用VBA宏代码编程),实现自定义MAXIF和MINIF函数。
操作方法
- 01
首先,来举个实际案例, 单元格A1:A6, 分别是一些数字2 6 8 7 5 4, 我们要求出其中满足大于4的单元格数值当中的最小值。
- 02
这时,可以在单元格A7,输入数组公式 =MIN(IF((A1:A6)>4,A1:A6))
- 03
注意,输入公式后,不要立即回车。 而是同时按下Ctrl+Shift+Enter这三个按键。 因为只有这样输入,才会被Excel识别为数组公式(公式两端自动出现一对大括号), 而不是普通公式!
- 04
举一反三,我们来看第2个例子。 单元格A1:A6, 分别是一些数字2 6 8 7 5 4, 我们要求出其中满足小于7的单元格数值当中的最大值。
- 05
类似地,我们在单元格A7,输入数组公式 =MIN(IF((A1:A6)>4,A1:A6)) 同时按下快捷键Ctrl+Shift+Enter 即可得出正确结果。
- 06
下面,我们来看最后一个实际Excel案例。 单元格A1:B6分别为下列数值 a 2 b 6 b 8 a 7 a 5 b 4 我们需要求出所有A列满足单元格值是a的相应B列值当中的最大值。 即先按照A列满足指定条件(值为a)筛选数据, 对筛选出的数据相应B列,求最大值。
- 07
同样,我们在单元格A7,输入数组公式 =MAX(IF(A1:A6="a",B1:B6)) 同样需要注意,输入公式后不要马上按Enter键回车, 而是同时按下快捷键Ctrl+Shift+Enter 即可得出正确结果。 类似地,要求出满足指定A列条件,相应B列值中的最小值, 大家应该不难学会了吧?