如何在 Excel 中計算每 5 列或每 5 欄的平均值?
當您在 Excel 中處理大型資料集時,經常需要針對每組連續的列或欄計算平均值——例如每 5 列或每 5 欄。雖然您可以手動輸入類似 =AVERAGE(A1:A5)、=AVERAGE(A6:A10)、=AVERAGE(A11:A15) 等公式,但若資料清單涵蓋數百甚至數千個儲存格,這種方式很快就會變得不切實際。手動重複操作不僅耗時,還容易出錯。幸運的是,Excel 提供多種自動化方法,讓這類數據分析更有效率、更輕鬆!本文將介紹幾種實用技巧,協助您快速計算每 5 列或每 5 欄的平均值,包括公式應用、Excel 增益集、VBA 自動化以及資料透視表技術,讓您能根據自身需求選擇最適合的解決方案。
使用 Kutools for Excel 計算每 5 列的平均值
使用公式計算每 5 列或每 5 欄的平均值
如果您偏好使用標準 Excel 公式,無需外掛程式或腳本即可自動計算每 5 列或每 5 欄的平均值。此方法特別適合靜態資料集,當您僅需產生一組平均值以支援分析時。不過,務必正確參照您的資料,並妥善處理任何空白或不規則的間隔。
以下範例示範如何計算欄中每 5 列的平均值:
1. 請在您希望顯示結果的第一個儲存格(例如 )C2)輸入下列公式:
=AVERAGE(OFFSET($A$2,(ROW()-ROW($C$2))*5,,5,)) 其中,A2 是您資料欄的起始儲存格,C2 是公式輸出儲存格,而 5 為間隔值(即需計算平均值的列數)。請根據您的實際資料集調整這些參照!
輸入公式後,按下 Enter,第一個平均結果將立即顯示。請參閱截圖:

2. 選取公式儲存格,並向下拖曳填滿控點,直到出現錯誤值(例如當剩餘資料少於 5 個數值時,會顯示)#DIV/0!),即可自動取得每 5 列一組的平均值。請參閱截圖:

提示與注意事項:若您的資料無法完美分組,可使用錯誤處理函數(例如 )IFERROR())來隱藏錯誤值,例如:
=IFERROR(AVERAGE(OFFSET($A$2,(ROW()-ROW($C$2))*5,,5,)),"") 若要計算橫向每 5 欄的平均值,請套用下列公式(置於 )A3 並向右拖曳):
=AVERAGE(OFFSET($A$1,,(COLUMNS($A$3:A3)-1)*5,,5)) 其中,A1 為起始儲存格,A3 為公式輸出儲存格,而 5 則是每組的欄數。請依您的資料配置調整儲存格參照。
輸入公式並按下 Enter 後,向右拖曳填滿控點,直到出現錯誤值。請參閱截圖:

這種基於公式的做法非常適合快速進行一次性計算,或當您不想仰賴額外工具時。然而,一旦資料的大小或結構有所變動,您可能需要手動調整公式或更新儲存格範圍,且在處理不完整的群組時更需格外留意。
使用 Kutools for Excel 計算每 5 列的平均值
Kutools for Excel 提供了一種便捷的圖形化解決方案,特別適合您經常需要對列群組計算平均值,卻不想處理複雜公式的場景。透過隔行插入分頁符與數據分頁統計功能,只需幾次點擊,即可快速分割資料並批量計算平均值!此方法尤其適用於需對固定間隔資料進行平均值計算,並希望在工作表中直接可視化分組的情形。
安裝 並下載 Kutools for Excel後,請依照下列步驟操作:
1. 點選 KUTOOLS PLUS > 列印 > 隔行插入分頁符。請參閱截圖:

2. 在隔行插入分頁符對話方塊中,指定間隔值(例如)5),即可每 5 列自動插入一個分頁符,讓 Kutools 幫您輕鬆分割資料!請參閱截圖:

3. 接著點選 KUTOOLS PLUS > 列印 > 數據分頁統計。請參閱截圖:

4. 在數據分頁統計對話方塊中,選取您要計算平均值的欄位,並選擇平均值作為計算方式。請參閱截圖:

5. 點選確定,Kutools 將立即在每 5 列間隔處插入包含平均值的小計列。請參閱截圖:

Kutools 讓重複性資料的分組與分析輕鬆完成,無需調整公式或撰寫任何腳本。但請注意,插入的分頁符可能會影響列印版面與檢視效果,因此若非用於報告,建議使用完畢後予以移除。
使用 VBA 程式碼計算每 5 列或每 5 欄的平均值
若您需要針對大型或持續變動的資料集,反覆計算固定列數或欄數的平均值,運用 VBA 自動化此流程將大幅節省手動作業時間。VBA 可自動循環遍歷您的資料,依需求進行分組,並輸出每一批次的平均結果。此方法特別適合進階使用者或需處理動態資料區塊的情境,同時避免因大量公式導致工作表顯得雜亂。以下提供一個通用型 VBA 巨集,您可輕鬆調整後立即使用。
自動計算每 5 列的平均值:
1. 點選開發人員 > Visual Basic,開啟 Microsoft Visual Basic for Applications 視窗後,再點選插入 > 模組,並將下方程式碼貼到模組中:
Sub AverageEvery5Rows()
Dim DataRange As Range
Dim OutputCell As Range
Dim GroupSize As Integer, i As Integer, j As Integer
Dim LastRow As Long, StartRow As Long
Dim SumValue As Double, CountValue As Integer
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set DataRange = Application.InputBox("Select the data range to average (single column)", xTitleId, Selection.Address, Type:=8)
Set OutputCell = Application.InputBox("Select the first cell for output", xTitleId, , Type:=8)
GroupSize = Application.InputBox("Enter group size (e.g. 5)", xTitleId, 5, Type:=1)
On Error GoTo 0
If DataRange Is Nothing Or OutputCell Is Nothing Then Exit Sub
LastRow = DataRange.Rows.Count
StartRow = 1
i = 0
Do While StartRow <= LastRow
SumValue = 0
CountValue = 0
For j = 0 To GroupSize - 1
If (StartRow + j) <= LastRow Then
SumValue = SumValue + DataRange.Cells(StartRow + j, 1).Value
CountValue = CountValue + 1
End If
Next j
If CountValue > 0 Then
OutputCell.Offset(i, 0).Value = SumValue / CountValue
Else
OutputCell.Offset(i, 0).Value = ""
End If
StartRow = StartRow + GroupSize
i = i + 1
Loop
End Sub 2. 若要執行程式碼,請點選
按鈕或按下 F5. 選取您的資料區域(單一欄位),再指定輸出的起始儲存格與群組大小(例如 5)。巨集將自動在指定的輸出欄位中,逐行列出每 5 列一組的平均值!
您也可以運用類似的巨集,輕鬆計算每橫列中每 5 欄的平均值。
自動計算每 5 欄的平均值::
Sub AverageEveryNColumns()
Dim DataRange As Range
Dim OutputCell As Range
Dim GroupSize As Long
Dim totalCols As Long, totalRows As Long
Dim startCol As Long, endCol As Long, outCol As Long
Dim v As Variant
Dim r As Long, c As Long
Dim sumVal As Double, cntVal As Long
Dim xTitleId As String
xTitleId = "KutoolsforExcel"
On Error Resume Next
Set DataRange = Application.InputBox("Select the data range (single rows)", _
xTitleId, Selection.Address, Type:=8)
Set OutputCell = Application.InputBox("Select the first cell for output (results will spill to the right)", _
xTitleId, , Type:=8)
GroupSize = Application.InputBox("Enter group size (e.g. 5)", xTitleId, 5, Type:=1)
On Error GoTo 0
If DataRange Is Nothing Or OutputCell Is Nothing Then Exit Sub
If GroupSize < 1 Then
MsgBox "Group size must be >= 1.", vbExclamation
Exit Sub
End If
Application.ScreenUpdating = False
Application.EnableEvents = False
Dim prevCalc As XlCalculation
prevCalc = Application.Calculation
Application.Calculation = xlCalculationManual
totalCols = DataRange.Columns.Count
totalRows = DataRange.Rows.Count
v = DataRange.Value
outCol = 0
For startCol = 1 To totalCols Step GroupSize
endCol = startCol + GroupSize - 1
If endCol > totalCols Then endCol = totalCols
sumVal = 0
cntVal = 0
For r = 1 To totalRows
For c = startCol To endCol
If Not IsEmpty(v(r, c)) Then
If IsNumeric(v(r, c)) Then
sumVal = sumVal + CDbl(v(r, c))
cntVal = cntVal + 1
End If
End If
Next c
Next r
If cntVal > 0 Then
OutputCell.Offset(0, outCol).Value = sumVal / cntVal
Else
OutputCell.Offset(0, outCol).Value = ""
End If
outCol = outCol + 1
Next startCol
CleanExit:
Application.Calculation = prevCalc
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
使用資料透視表計算每 5 列的平均值
另一種實用的計算方式是運用資料透視表,搭配序列號或索引欄位對資料進行分組。此方法特別適合處理結構化表格資料的使用者,無需撰寫公式或安裝外掛程式,即可快速取得互動式摘要。資料透視表能動態因應資料變更,並支援彈性分組,非常適合用於大型資料集或定期報表任務。
以下是使用輔助欄與資料透視表執行此操作的方法:
1. 在資料旁新增「索引」或「群組」欄位,為每 5 列標記同一群組。於第一筆資料列(B2)中輸入:
=INT((ROW()-ROW($A$2))/5)+1 此公式會依序為每一列加上標記,並每 5 列分配相同的群組編號。請將此公式向下填滿至整個資料集範圍。
2. 選取您的資料與新增的索引欄位,然後按一下插入> 樞紐分析表。在建立樞紐分析表對話方塊中,確認您的資料範圍,並選擇放置樞紐分析表的位置。
3. 在新建立的資料透視表欄位清單中,將「Group」欄位拖曳至列區域,並將您的數值欄位(例如「Sales」)拖曳至數值區域。
4. 按一下數值區域中的下拉式箭頭,選擇數值欄位設定,再選取平均值。
現在,您的資料透視表會透過輔助欄位進行便捷分組,並顯示原始資料每 5 列的平均值。
資料透視表方法的主要優勢在於其高度彈性,以及源數據變動時能輕鬆更新。然而,此方法需新增輔助欄位,若資料必須維持精確格式或不得更動,則可能不適用。
相關文章:
如何在輸入新數值時,自動計算某欄位最新 5 筆數值的平均值?
如何在 Excel 中計算前 3 筆或後 3 筆數值的平均值?
最佳 Office 生產力工具
| 🤖 | KUTOOLS AI 助手:基於以下內容徹底革新數據分析:智慧執行 | 產生程式碼| 建立自訂公式 | 分析資料並產生圖表| 呼叫增強函數…… |
| 熱門功能:尋找、醒目提示或標記重複值 | 刪除空白行 | 合併列或儲存格而不遺失資料 | 不使用公式的四捨五入…… | |
| 高級 LOOKUP:多重條件 VLookup | 多重數值 VLookup | 跨多個工作表 VLookup | 模糊查找…… | |
| 高級下拉列表:快速建立下拉式清單 | 相依式下拉式清單 | 多選下拉式清單…… | |
| 欄位管理員:新增指定數量的欄位|移動欄位|切換隱藏欄位的可見狀態|比較範圍與欄位…… | |
| 精選功能:網格聚焦 | 設計視圖 |增強編輯欄 | 工作簿與工作表管理員 | 資源庫(自動文字)| 日期提取 | 合併工作表 | 加密/解密儲存格 | 依清單傳送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體儲存格/斜體/刪除線……) ...... | |
| 頂尖 15 工具組:12 文字工具(添加文本,刪除特定字符,……)| 50+ 圖表 類型(甘特圖,……)| 40+ 實用公式(基於生日計算年齡,……)| 19 插入工具(插入二維碼,從路徑插入圖片,……)| 12 轉換工具(金額轉大寫,匯率轉換,……)| 7 合併和拆分工具(高級合併行,分割儲存格,……)|……以及更多 |
運用 Kutools for Excel 強化您的 Excel 技能,體驗前所未有的高效能!Kutools for Excel 提供超過 300 項進階功能,大幅提升生產力並節省寶貴時間。立即點擊,取得您最需要的功能……
Office Tab 為 Office 帶來分頁式介面,讓您的工作更輕鬆自在!
- 在 Word、Excel、PowerPoint 中啟用分頁式編輯與閱讀功能,以及 Access、Visio 與 Project。
- 在同視窗的新分頁中開啟並建立多份文件,而非另開新視窗。
- 每天為您提升 50% 的工作效率,並省下數百次滑鼠點擊!
所有 Kutools 增益集,一個安裝程式
Kutools for Office 套件整合了 Excel、Word、Outlook 與 PowerPoint 的增益集,以及 Office Tab Pro,非常適合需要跨多個 Office 應用程式協作的團隊使用!
- 全能套件— 包含 Excel、Word、Outlook 與 PowerPoint 增益集,以及 Office Tab Pro
- 一個安裝程式,一個授權— 數分鐘內即可完成設定(支援 MSI)
- 協同運作更出色— 在多個 Office 應用程式間實現流暢的生產力體驗
- 30 天完整功能試用— 無需註冊,無需信用卡
- 超值之選— 比單獨購買各增益集更省費用