如何根据其他2列的值编写平均函数

时间:2014-05-06 07:29:59

标签: excel

我在MS-Excel中编写函数时遇到了一些问题 我有以下数据:

columnA       columnB     columnC
0              -4           5
0              -4           15
0              -2           7
1              -5           8
1              -5           6
2               8           4

我想从C列获取D列中的平均数据,该数据基于A列和B列的值,如:

columnD
10                 // comment ---> from A=0,B=-4 (15+5)
7                  // comment ---> from A=0,B=-2 (7)
7                  // comment ---> from A=1,B=-5 (8+6)
4                  // comment ---> from A=2,B=8 (4)

我尝试写作,但我不知道如何设置A列和B列之间的关系 请告诉我如何解决这个问题。

1 个答案:

答案 0 :(得分:0)

如果您使用Excel 2007及更高版本,则可以尝试使用Averageifs

如果您有以下数据: enter image description here

D2中输入此公式:

=IF(SUM(A1:B1)=SUM(A2:B2),"",AVERAGEIFS(C$2:C$7,A$2:A$7,A2,B$2:B$7,B2))

结果如图所示。

<强> EDIT1:
现在要真正达到你想要的输出,你需要另一个公式:

=IFERROR(INDEX(D$1:D$7,SMALL(IF(D$2:D$7<>"",ROW(D$2:D$7)),ROW(A1))),"")

使用 Ctrl + Shift + 输入E2输入此内容。
结果将是:

enter image description here

编辑2:
在评论中回答跟进 要计算,请使用Countifs函数,如下所示:

=IF(SUM($A1:$B1)=SUM($A2:$B2),"",COUNTIFS(A$2:A$7,A2,B$2:B$7,B2))

F2中输入时,它会为您提供以下结果。 enter image description here