Excel用AverageIfs函数求满足两个以上条件平均值的6个实例,包含除数为0、不计空单元格与同列多条件

亮术网 2019-09-13 本网原创

在 Excel 中,AverageIfs函数用于满足两个或以上的多条件求平均值,而AverageIf函数只用于一个条件求平均值。AverageIfs函数至少要有一个条件,最多不能超 127 个条件,条件之间是“与”的关系;另外,它是 Excel 2007 新增加的函数,只能在 Excel 2007 以上版本使用。

用AverageIfs函数多条件求平均值常会遇到除数为 0 错误,空单元格的处理,逻辑值的有效与忽略,条件中有表达、函数和通配符问号 ? 与星号 *,条件区域与求平均值区域形状与大小必须相同,同列多条件求平均值等问题,这些问题以下都配有具体的实例或详细说明。

 

 

一、Excel AverageIfs函数的语法

1、表达式:AVERAGEIFS(Average_Range, Criteria_Range1, Criteria1, [Criteria_Range2, Criteria2], ...)

中文表达式:AVERAGEIFS(求平均值区域, 条件区域1, 条件1, [条件区域2, 条件2], ...)

 

2、说明:

A、条件区域1与条件1组成一个条件区域/条件对,AverageIfs函数最多不能超过 127 个条件区域/条件对。

B、如果 Average_Range 全为空值、文本值或无法转为数值的单元格,AverageIfs函数将返回除数为 0 错误 #DIV/0!;如果没有满足条件的单元格,AverageIfs函数也返回 #DIV/0! 错误。

C、条件区域中的空单元格,AverageIfs函数将其视为 0 值。若区域中包含逻辑值 True 或 False,True 被转为 1、False 被转为 0。

D、Criteria 可以是数字、文字(如“合格”)、表达式(如 ">=1" 或 ">="&1)和单元格引用。另外,在条件中还可以使用通配符问号(?)和星号(*),问号表示任意一个字符,星号表示一个或一串字符,如果要查找问号或星号,需要在它们前面加转义字符 ~,例如 ~?、~*。

E、AverageIfs函数要求每个 Criteria_Rang 的大小和形状必须与 Average_Range 相同,而 AverageIf函数可以不相同。例如:Criteria_Rang 为 A2:A100,Average_Range 为 B2:B100,则为它们的大小与形状相同;如果 Average_Range 为 B3:B100,则为它们的大小和形状不相同。

 

 

二、Excel AverageIfs函数的使用方法及实例

(一)求满足两个条件的平均值实例

1、假如要求在深圳销售的衬衫的平均销量。双击 F13 单元格,把公式 =AVERAGEIFS(F2:F12,C2:C12,"衬衫",D2:D12,"深圳") 复制到 F13,按回车,返回求平均值结果 525.5;操作过程步骤,如图1所示:

Excel AverageIfs函数的使用方法及实例

图1

2、公式 =AVERAGEIFS(F2:F12,C2:C12,"衬衫",D2:D12,"深圳") 说明:

F2:F12 为求平均值区域;C2:C12 为第一个条件区域,"衬衫" 为第一个条件;D2:D12 为第二个条件区域,"深圳" 为第二个条件;公式的意思是:在 C2:C12 中查找所有为“衬衫”的服装,再在 D2:D12 中查找所有为“深圳”的服装,然后在 F2:F12 中,求满足两个条件的平均值。

 

(二)返回除数为 0 错误 #DIV/0! 的实例

1、双击 A8 单元格,把公式 =AVERAGEIFS(A2:A7,C2:C7,">=5") 复制到 A8,按回车,返回除数为 0 错误 #DIV/0!;再双击 D8,把公式=AVERAGEIFS(D2:D7,C2:C7,">=20") 复制到 D8,按回车,也返回除为 0 错误;操作过程步骤,如图2所示:

Excel AverageIfs函数返回除数为 0 错误 #DIV/0! 的实例

图2

2、公式 =AVERAGEIFS(A2:A7,C2:C7,">=5") 的求平均值区域为 A2:A7,尽管 C2:C7 中有满足条件的记录,但 A2:A7 中全为文本,因此返回除数为 0 错误。公式 =AVERAGEIFS(D2:D7,C2:C7,">=20") 中,D2:D7 全为数值,但 C2:C7 没有满足条件的记录,所以也返回除数为 0 错误。

 

(三)逻辑值 True 或 False 有效与忽略的实例

1、双击 A7 单元格,把公式 =AVERAGEIFS(A1:A6,B1:B6,TRUE) 复制到 A7,按回车,返回求平均值结果 6;操作过程步骤,如图3所示:

Excel AverageIfs函数逻辑值 True 或 False 有效与忽略的实例

图3

2、公式 =AVERAGEIFS(A1:A6,B1:B6,TRUE) 在 A1:A6 中求平均值,条件是 B1:B6 中的值为 TRUE,满足条件的只有 B1、B3 和 B6,A2,A3 和 A6 中的值分别为 TRUE,FALSE 和 TRUE,而求平均值结果为 6,说明 A2,A3 和 A6 没有计入求平均值,即逻辑值在求平均值区域被忽略;而在 B1:B6 中能选出为 TRUE 的记录,说明逻辑值在条件区域有效。

 

(四)条件中使用通配符 ? 或 * 的实例

1、假如要求“编号”以 NS 开头且“产品名称”仅有四个字的服装平均销量。双击 F13 单元格,把公式 =AVERAGEIFS(F2:F12,A2:A12,"NS*",B2:B12,"????") 复制到 F13,按回车,返回求平均值结果 679.33;操作过程步骤,如图4所示:

Excel AverageIfs函数条件中使用通配符 ? 或 * 的实例

图4

2、公式 =AVERAGEIFS(F2:F12,A2:A12,"NS*",B2:B12,"????") 说明:

F2:F12 为求平均值区域;A2:A12,"NS*" 为第一个条件区域/条件对,意思是在 A2 至 A12 中找出所有以 NS 开头的服装,NS 后的 * 表示任意一个或多个字符;B2:B12,"????" 为第二个条件区域/条件对,意思是在 B2:B12 中找出所有仅有四个字的服装;执行时,先找出满足第一个条件的服装,然后把找出的服装再匹配第二个条件,最后返回符合两个条件的服装,再在 F 列求这些服装的平均值。

 

(五)同一区域同时为求平均值和条件区域的实例

1、假如要求所有销量大于 0 的女装平均销量。双击 D9 单元格,把公式 =AVERAGEIFS(E2:E8,C2:C8,"女装",E2:E8,">0") 复制到 E9,按回车,返回求平均值结果 627.75;操作过程步骤,如图5所示:

Excel AverageIfs函数同一区域同时为求平均值和条件区域的实例

图5

2、公式中的 E2:E8 既为求平均值区域又为第二个条件 ">0" 的区域,说明同一区域可同时为求平均值和条件区域。

提示:如果求平均值区域有空单元格又不想把它计入求平均值,可以用条件 ">0" 排除。

 

(六)同列多条件求平均值实例

1、假如要求价格在 100 到 200 之间服装销量的平均值。双击 E13 单元格,把公式 =AVERAGEIFS(E2:E12,D2:D12,">=100",D2:D12,"<=200") 复制到 E13,按回车,返回求平均值结果 730;操作过程步骤,如图6所示:

Excel AverageIfs函数同列多条件求平均值实例

图6

2、公式 =AVERAGEIFS(E2:E12,D2:D12,">=100",D2:D12,"<=200") 的条件区域都为 D2:D12,意思是在 D2:D12 中找出同时满足大于等于 100 与小于等于 200 的所有服装,然后在 E 列求它们的平均值。

 

(七)两个条件为日期的求平均值实例

1、假如要求在 2018年9月10和11日两天销售的服装的平均销量。双击 D12 单元格,把公式 =AVERAGEIFS(D2:D11,B2:B11,">=2018/9/10",B2:B11,"<=2018/9/11") 复制到 D12,按回车,返回求平均值结果 805;操作过程步骤,如图7所示:

图7

2、公式 =AVERAGEIFS(D2:D11,B2:B11,">=2018/9/10",B2:B11,"<=2018/9/11") 的条件区域都为 B2:B11;从第一个条件 ">=2018/9/10" 可知:当日期与大于等于组成合时,可以把它们写在一起;公式的意思是在 B2:B11 中找出同时满足大于等于 "2018/9/10" 与小于等于 "2018/9/11" 的所有服装,然后在 D 列求它们的平均销量。