excel 中某一列数如何找出第二大的数

excel 中某一列数如何找出第二大的数

假如数值在A1:A100,求数值:
一:max函数
第一大:=MAX(A1:A100)
第二大:=MAX(IF(A1:A100<MAX(A1:A100),A1:A100))
先求出小于最大值的数组,然后在数组中找到最大值,就是第二大了
二、large函数
用large函数
第一大:=LARGE(A1:A100,1)
第二大:=LARGE(A1:A100,COUNTIF(A1:A100,LARGE(A1:A100,1))+1)
求出最大值的个数n,并求出第n+1位的最大值。(因为large函数遇到数值相同的,第二大会和第一大相同)。
还能用函数找出数值多个时,在范围中出现位置:
比如刚才的公式在b5,则
第一次出现的位置:
=ADDRESS(MIN(IF(A1:A100=B5,ROW(A1:A100))),4)
或:
=ADDRESS(SMALL(IF(A1:A100=B1,ROW(A1:A100)),1),4)

最后一次出现的位置:
=ADDRESS(Max(IF(A1:A100=B5,ROW(A1:A100))),4)
或:
=ADDRESS(LARGE(IF(A1:A100=B1,ROW(A1:A100)),1),4)

同理,第二次出现的位置:
=ADDRESS(SMALL(IF(A1:A100=B1,ROW(A1:A100)),2),4)
倒数第二次出现的位置:
=ADDRESS(LARGE(IF(A1:A100=B1,ROW(A1:A100)),2),4)
需按Ctrl+Shift+Enter结束公式输入。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-03-21
LARGE(array,k)
Array
为需要从中选择第
k
个最大值的数组或数据区域。
K
为返回值在数组或数据单元格区域中的位置(从大到小排)。
如果区域中数据点的个数为
n,则函数
LARGE(array,1)
返回最大值,函数
LARGE(array,n)
返回最小值。
大家正在搜