Excel 求有条件的平均数,超出范围的不进行平均值计算

36220000
37180000
38140000
39100000
40060000
41020000
41980000
42940000

有这么组数字,求按以下条件计算平均值的Excel计算公式:
1. 在有效范围内:大于等于36135370,并且小于等于42512200
2. 剔除最大一个和最小一个

求计算公式
万分感谢,在线等
#coolbi5:用sumif()/countif()怎么写公式呢?? 若以A1:A8为例

#shuhua0715:怎么得到的结果和我手工计算的不一样。。按条件应该会排除42940000,再减去最大和最小的41980000和36220000,计算结果是39100000.。。

#bluelaser:这个公式看不懂,而且计算结果也不符合。。。不明白

#All:大家帮帮忙~追加分~

1.在一个单元格内输入以下公式:
=average(if((a1:a8>=36135370)*(a1:a8<=42512200),a1:a8)
此公式为数组公式,公式输入完后,需按ctrl+shift+enter三键结束。

2.用对称剔除极值求平均值的函数:TRIMMEAN
=TRIMMEAN(a1:a8,2/COUNTA(a1:a8))

数据区域(a1:a8)根据实际情况修改。
你可以直接复制以上公式到excel中进行验证。
以上公式我认为应该算是比较简洁的了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-10-10
Excel 求有条件的平均数,超出范围的不进行平均值计算可以使用if和AVERAGE,譬如:
=if(A1<100,AVERAGE(A1:A10),)
即如果A1小于100,取A1到A10的平均值,否则不取值。
第2个回答  2009-12-16
假设数据在A1:A8
=TRIMMEAN(IF((A1:A8>=36135670)*(A1:A8<=42512200),A1:A8),2/(SUM(COUNTIF(A1:A8,{">=36135670",">42512200"})*{1,-1})-2))
数组公式,按Ctrl+Shift+Enter结束公式输入。
注:数据区域根据实际确定。
第3个回答  2009-12-16
设数据在a列
=(sumproduct((a1:a10>=36135370)*(a1:a10<=42512200)*a1:a10)-min(if(a1:a10>=36135370,a1:a10,10^9))-max(if(a1:a10<=42512200,a1:a10,0)))/(sumproduct((a1:a10>=36135370)*(a1:a10<=42512200))-2)

CTRL+SHIFT+Enter
第4个回答  2009-12-16
07版EXCEL里面有个AVERAGEIF函数可以直接条件平均

03版的只能 用sumif()/countif()