2016-10-28 154 views
0

我有一個數據集,其中每個類別中的值的數量不同。我想讓excel自動將一個類別的值分組並計算出平均值。例如,見下圖:如何讓Excel計算一組值的平均值

截圖示例數據集

正如你可以看到X1有三個值,而X2只有一個值,X3有三個值。我希望excel能夠返回「平均」列中顯示的每個類別的平均值。

+2

通常你會使用'AVERAGEIF',但是你的數據不好。您需要填寫第一列,以便每行都與其X#值關聯。繼續使用不良數據只會導致越來越嚴重的問題。 – tigeravatar

回答

0

如果你能類別列前使用一個輔助列,可以有這樣的事情:

enter image description here

下面是使用的公式:

enter image description here

助手列將數根據類別劃分行並增加每個類別變化中的編號。平均值欄使用以編號作爲標準的averageif公式。

您可以進一步格式化助手列,使其不可見。

0

間接功能可以幫助... 如果你知道在第1列,你可以做到這一點,下一個標籤...

假設類別是A列和X1是第2行

範圍( 「C1」)=AVERAGE(INDIRECT("B"&ROW()&":B"&MATCH("X2",A:A)-1))
範圍( 「C2」)=AVERAGE(INDIRECT("B"&ROW()&":B"&MATCH("X3",A:A)-1))
爲了您的最後...
範圍( 「C」)=AVERAGE(INDIRECT("B7:B"&COUNTA(B:B)))

0

正如@tigeravatar提到,在補充提到,你將有一個更容易與工作數據fill in the gaps。例如,僅應用小計(每次更改:Category,使用函數Average,將小計添加到:Value)。

或者,申請AVERAGEIF