嗨,大家好!很高兴又一次与大家分享 Excel 函数相关知识!


记得上学的时候,每次考试过后,学校都要统计这次考试的最高分和最低分分别是多少。


在 90 年代计算机和办公软件并不普及的时候,只能人工手动统计最高分和最低分。


但随着时代的进步,现在也就不用去手动统计了,利用软件工具,可以轻松完成数据的统计。


今天我们就来看下,如何使用 Excel 中函数快速求出的一组数据中的最高分和最低分。


如下图,是某所学校的一次考试成绩(数据已简化):



现在需要求出,本次考试成绩总分中,最高分和最低分分别是多少?


一共有 3 种求解方法,下面就来看看。

01 MAX 函数与 MIN 函数


MAX 函数的意思就是求取最大值。


如下图:


在【K2】单元格输入以下公式:

=MAX(I2:I7)


公式的意思是:


求出【I2:I7】这个单元格区域中的最大值是多少。


它的参数非常简单,直接是引用单元格区域就可以了。


MIN 的意思就是求取最小值。


如下图:



在【I2】单元格输入以下公式:

=MIN(I2:I7)


公式的意思是:


求出【I2:I7】引用单元格区域中的最小值。


可以看出:MAX 函数和 MIN 函数两者使用方法完全一样,可以直接求出单元格区域中的最大值或者最小值。


02 LARGE 函数与 SMALL 函数


如果要求单元格区域中的第几个最大值,我们可以用 LARGE 函数。


如下图:


在【K3】单元格输入以下公式:

=LARGE(I2:I7,1)


公式的意思是:


求出【I2:I7】单元格区域中的第一个最大值。

它的参数有两个,

=LARGE(单元格区域,第几个最大值)


意思是:求出单元格区域中的第几个最大值,比如写上数字 1,就是第一大,写上数字 2,就是第二大,依次类推。


如果要求单元格区域中的第几个最小值,我们可以用 SMALL 函数。


如下图:



在【L3】单元格输入以下公式:

=SMALL(I2:I7,1)


公式的意思是:


求出【I2:I7】单元格区域中的第一个最小值。


=SMALL(单元格区域,第几个最小值)


这里的 LARGE 与 SMALL 的使用方法也是完全一样的,也比较好理解。


我们从这两个函数的参数和用法上可以看出,他们比 MAX 和 MIN 要灵活很多,可以求出区域中第几个最大值或者第几个最小值。


03 SUBTOTAL 函数与 AGGREGATE 函数


SUBTOTAL 函数,是一个多功能函数,它可以用来求和、求平值、求最大值、求最小值等,共包含 11 种统计汇总功能。


先来看下 SUBTOTAL 函数是如何统计最大值的。



在【K4】单元格输入以下公式:

=SUBTOTAL(4,I2:I7)


公式的意思是:


求出【I2:I7】单元格区域中的最大值。


这里的第一个参数是数字 4,代表最大值的意思。

当然在这里也可以输入数字 104,结果都是一样的。

他们的区别在于:如果区域中手动隐藏了某些行的情况下,结果可能会不同。


下面是该函数的第一参数的取值,供大家参考下。


如果想求出最小值,只要把第一个参数改成 5 或者 105 就可以了。


=SUBTOTAL(5,I2:I7)


OR:


=SUBTOTAL(105,I2:I7)


AGGREGATE 函数,它也是一个多功能函数。


是在 Excel2010 或者之后的版本中新增加的。共包含 19 种统计汇总的功能。

一起来看看 AGGREGATE 函数的使用方法:


在【K5】单元格输入以下公式:

=AGGREGATE(4,0,I2:I7)


公式的意思也是求出区域中的最大值。


如果求最小值,把第一参数的数字 4 改成 5 就可以了。


如下图:


这个函数功能非常强大,比如,它可以在隐藏行的条件下或者单元格中存在错误值的情况下,求取最大值或者最小值。


以下是它的第一参数和第二参数的具体的取数,供大家参考下。




知识拓展:


其实,我们在平时的工作中,也有可能不是简单地求取最大值和最小值,在很多情况中,是要在满足某些条件下,求取最大值和最小值。

比如,还是以上面的例子为例,想求出一班中总分最高和最低分别是多少:



在【L2】单元格输入以下公式:

=MAX(IF(C2:C7=K2,I2:I7))


公式的意思是:

先用 IF 函数判断【C2:C7】这个单元格区域等于【K2】单元格中的班级,如果相等就返回【I2:I7】区域中对应的值,如果不相等就返回 FALSE。


=MAX({369;379;400;FALSE;FALSE;FALSE})


最后用 MAX 求出这个结果数组中的最大值。


此处 MAX 函数会忽略 FALSE,因此最大值就是 400。


另外,需要提醒大家的是:这个是数组公式,需要按三键结束【Ctrl+Shift+Enter】。


MIN 函数也有同样的用法。



当然还可以用 LARGE、SMALL、AGGREGATE 等函数,按条件求取最大值和最小值。


这些留给小伙伴们自行尝试。


04 总结


今天,我们一共学习了六个函数,可以求最大值或者最小值。


但是每个函数的应用场景又有所区别噢。


比如:要是无条件的情况下,求取最大值和最小值,以上六个函数都可以。


如果是有条件下的情况下,求最大值和最小值,只有:


MAXMINLARGESMALLAGGREGATE 这五个函数可以。

如果有隐藏行的情况下,SUBTOTAL 和 AGGREGATE 这两个函数可以。


如果区域中有错误值的情况下,只有 AGGREGATE 这个函数可以直接忽略错误值求出。


而 MAXMINLARGESMALL 函数需要结合 IFERROR 等容错函数来求出。