Excel-使用列中第一個未使用的儲存格對後續儲存格進行平均

Excel-使用列中第一個未使用的儲存格對後續儲存格進行平均

早安,

我需要將此輸出放在單獨的工作表上,但本質上我試圖解決的問題可以解釋如下。

我試圖弄清楚如何使用以下格式對列中的單元格進行平均:

B2Sheet2 上,我想要average(Sheet1!a2:a5)、 在B3、、average(Sheet1!a6:a9)B4、 (Sheet1!a10:a13) 等。

我可能已經使這變得比必要的更加複雜,但我的想法是使用 Offset 函數,如下所示:

=AVERAGE(OFFSET(Sheet1!$a$2, 4*(ROW()-ROW(Sheet1!$a$2)), 0, 4, 1))

哪個有效!但是,我需要另一列來顯示不同的數據,如下所示:

=AVERAGE(OFFSET(Sheet1!$a$118, 4*(ROW()-ROW(Sheet1!$a$118)), 0, 4, 1))

這給了我一個參考錯誤。誰能幫助我理解為什麼這不起作用?一個簡單的解決方案將不勝感激,但解釋為什麼會特別好!

答案1

是的,所以我們將為您的第一個公式使用不同的公式 -

=AVERAGE(INDEX(A:A,1+4*(ROW()-ROW($B$1))):INDEX(A:A,4*(ROW()-ROW($B$1)+1)))

其作用是建立一個陣列供平均值處理。它透過為範圍的每一側查找當前行、減去參考行、加 1 並乘以 4 來實現此目的。使用評估公式來查看它的實際效果。

假設您想再次執行此操作,但從 A118 開始,我想這就是您要問的

=AVERAGE(INDEX(A118:A999,1+4*(ROW()-ROW($B$118))):INDEX(A118:A999,4*(ROW()-ROW($B$118)+1)))

現在,這要求您在第 118 行完成工作,但假設您只想在第 1 行開始一個新列 -

=AVERAGE(INDEX(A118:A999,1+4*(ROW()-ROW($B$1))):INDEX(A118:A999,4*(ROW()-ROW($B$1)+1)))

就像第一個一樣。

相關內容