将 Excel AVERAGE 公式移动到多列

将 Excel AVERAGE 公式移动到多列

我有一系列过去几十年的季度平均租金数据,想创建一个单独的年度平均租金列表(查看链接)。为了得到示例中的 1990 年平均值,我使用了以下公式:

=AVERAGE(C4:F4)

但是,当我尝试拖动公式时,起始和结束单元格仅移动一列(即 D4:G4),而不是平均 1991 年四个中位租金所需的四列。

是否有一种简单的方法可以复制公式并让列号移动四位来计算后续年份的平均值?

答案1

一种方法是使用 AVERAGE 和 INDEX 函数(返回单元格引用而不是单元格值)来实现此目的。

参见下面的屏幕截图。例如,您的数据位于 C4 至 N6 中,而您的平均值预计位于相邻列中的 C9 及以后。

在 C9 中输入以下公式并将其拖动过去。

{=AVERAGE(INDEX($C4:$N4,1,MATCH(C$8,YEAR($C$3:$N$3),0)):INDEX($C4:$N4,1,MATCH(C$8,YEAR($C$3:$N$3),0)+3))}

将此公式放在不带括号的位置,然后在公式栏中按 CTRL+SHIFT+ENTER 使其成为数组公式。将其拖到下方和横跨。

如果你需要整套戒指的平均值(所有三枚戒指加在一起的年份,其

{=AVERAGE(INDEX($C$4:$N$6,1,MATCH(C8,YEAR($C$3:$N$3),0)):INDEX($C$4:$N$6,3,MATCH(C8,YEAR($C$3:$N$3),0)+3))}

在此处输入图片描述

假设 - 您的数据始终以每年 4 个季度为单位。您的年份位于 C8、D8、E8 等列的连续单元格中。

答案2

使用以下公式:

=AVERAGE(IF(YEAR($C$3:$N$3)=C8,$C$4:$N$4))
同时 按下Ctrl+ Shift+ (数组公式)作为内部并将其拖到同一行 它将检查 C3:N3 中的日期(Mar-90、Jun-90...)是否等于 C8 中的年份(1990)并计算相应数据的平均值。 Enter

=AVERAGE(IF(YEAR($C$3:$N$3)=C8,$C$5:$N$5))对于中间(同时 Ctrl+ Shift+ )Enter

=AVERAGE(IF(YEAR($C$3:$N$3)=C8,$C$6:$N$6))对于外部(同时 Ctrl+ Shift+ )Enter

在此处输入图片描述

相关内容