KutoolsforOffice — 一套方案,五大工具。事半功倍。

如何在 Excel 中对每 n 行进行向下求和?

作者晓阳修改日期
每 n 行求和

假设您的工作表中有一列冗长的数据,需要对接下来的每 5 行分别求和——例如使用 =SUM(B2:B6)、=SUM(B7:B11) 等公式——并将每个结果输出到单独的列中(如示例截图所示)。手动操作不仅耗时,在处理大型数据集时还极易出错。本文将为您介绍几种高效、准确的解决方案,助您轻松实现“每 n 行求和”的目标,包括灵活的公式技巧、Kutools for Excel 的便捷工具、VBA 宏自动化,以及数据透视表技术。您还将获得关于适用场景、参数调整与常见问题排查的实用指导,确保数据汇总流程顺畅无忧。请从以下选项中选择最适合您需求的方法开始探索!

在 Excel 中使用公式对每 n 行向下求和

在 Excel 中使用 Kutools for Excel 对每 n 行向下求和

在 Excel 中使用数据透视表分组对每 n 行向下求和

在 Excel 中使用 VBA 代码对每 n 行向下求和


在 Excel 中使用公式对每 n 行向下求和

例如,若需对数据集中每 5 行进行求和,可构建并应用一个公式来自动完成计算。此方法灵活高效,适用于动态数据或在无加载项可用的场景;但若数据结构发生显著变化,则可能需要相应调整公式。

1. 在您希望显示第一组结果的空白单元格中(例如 C2 单元格),输入以下公式:

=SUM(OFFSET($B$2,(ROW()-ROW($B$2))*5,0,5,1))

提示:在上述公式中,B2 是您数据的起始单元格(请根据实际数据区域相应调整),而 5 表示分组大小(即每个区块要求和的行数)。若需其他间隔(例如每 10 行),只需将公式中的 5 替换为 10 即可。

2. 输入公式后,使用填充柄向下拖动该列,即可为每组 n 行生成总和。继续操作,直至出现零值,表示所有数据块均已处理完毕。参见截图:

拖动并填充公式到其他单元格

参数说明与提示:

  • OFFSET($B$2,…):按分组间隔的倍数向下偏移引用。请根据实际数据集的起始位置,将绝对引用调整为相应单元格。
  • ROW()-ROW($B$2):返回一个顺序索引(第一组为 0,第二组为 1,依此类推)。请确保从正确的行开始填充,或进行相应调整。
  • 当分组计算超出数据区域范围时,公式结果可能显示为 0;这属于正常现象,仅表示您已到达数据末尾。

注意事项:

1. 在某些情况下,您可能希望将求和结果直接显示在每 n 行区块末尾的数据行中(而非单独一列),例如下图所示的 C 列:

每 n 行求和并将总计值放在最后一行

要实现此效果,请在 C1 单元格中输入以下公式(假设您的第一个值位于 B1,且希望对每 5 行求和),然后向下拖动:

=IF(MOD(ROW(),5),"",SUM(OFFSET(B1,,,-5)))

此公式仅在每第 n 行插入总和。注意事项:此公式要求您的数据集从工作表的第一行开始。若数据从其他行开始,请相应调整引用。

2. 对于横向排列的数据,若需对每 n 列进行求和,请在目标单元格(例如 C1)中使用以下公式:

=SUM(OFFSET($A$1,,(COLUMNS($A$3:A3)-1)*5,,5))

此处,A1 为起始单元格,A3 是您输入此公式的位置,而 5 是您希望求和的列间隔。根据需要向右拖动填充柄。更多说明请参见以下截图:

应用公式对每 n 列求和
向下箭头
向右拖动公式以获取结果

如果结果不正确,请仔细检查绝对引用与相对引用,并根据实际数据位置调整分组大小及单元格引用。


在 Excel 中使用 Kutools for Excel 对每 n 行向下求和

Kutools for Excel 提供了一种无需手动编写公式即可对每 n 行求和的便捷方式,特别适用于大型数据集或需要批量生成小计的场景。该工具结合分页符与分类汇总功能,轻松简化重复性任务,有效减少公式错误。请注意,此功能仅限已安装 Kutools 加载项的用户使用。

Kutools for Excel 提供 300 多项高级功能,简化复杂任务,提升创造力与效率。集成 AI 能力,Kutools 精准自动化任务,让数据管理变得轻松自如。Kutools for Excel 的详细信息……         免费试用……

要实施此方法,请按以下步骤操作:

1. 单击 KUTOOLS PLUS > 打印 > 隔行插入分页符。参见截图:

2. 在隔行插入分页符对话框中,指定分页符的插入间隔(例如 5),然后单击“确定”。该工具将自动在您的数据集中每隔指定行数插入分页符。参见截图:

在“每隔行插入分页符”对话框中设置选项

3. 接下来,依次点击 KUTOOLS PLUS > 打印 > 数据分页统计

点击 Kutools 的分页小计功能

4. 在数据分页统计对话框中,选择您要进行求和的列标题,并根据需要选择计算方法(如求和、平均值等),然后单击“确定”继续。参见截图:

在“分页小计”对话框中设置选项

5. 现在,所有 n 行组的总计将按需显示在输出中。参见截图:

每 5 行数据已求和

如果之后需要删除分页符,可在 KUTOOLS PLUS 的打印下拉菜单中选择删除所有分页符。若在应用分类汇总后数据发生更改,可能需重复此操作以刷新结果。

立即下载 Kutools for Excel 并免费试用!


在 Excel 中使用数据透视表分组对每 n 行向下求和

数据透视表解决方案特别适合熟悉 Excel 数据分析工具的用户,助您直观汇总数据块,并可灵活选择进一步拆解数据。通过添加辅助列来索引分组,即可轻松实现每 n 行求和,无需依赖公式或宏。此方法能快速分析并呈现分组数据,仅需一次性设置辅助列即可。

适用于按时间段统计销售数据、执行批处理操作,或为报告汇总连续数据块等场景。

步骤:

  • 在您的数据中创建一个辅助列(例如在 C 列),假设您的数据从第 2 行开始,并且希望对每 5 行求和,请在 C2 单元格中输入以下公式:
=INT((ROW(B2)-ROW($B$2))/5)+1
  • 将该公式向下拖动至所有行,即可为每 5 行的区块生成唯一的组索引。
  • 接下来,请选择包含此新建类别列的数据集,然后插入数据透视表(依次点击“插入”>“数据透视表”)。
  • 在数据透视表字段列表中,将“组”字段(即辅助列)拖至“行”区域,并将值列拖至“值”区域,汇总方式设为“求和”。
  • 数据透视表将根据您的组索引,展示每 n 行区块的汇总结果。

若需按其他间隔进行分组,请在辅助列公式中将 5 替换为目标间隔值。删除数据或插入行后,可能需要更新辅助列并刷新数据透视表。若结果不正确,请检查分组索引公式,并确保字段列表已按上述方式设置。

此方法非常适合用于迭代报告、数据聚合或区块结果对比,且一旦设置完成,主计算区域无需维护任何公式。对于动态数据集,只需重新计算辅助列并刷新数据透视表,即可轻松更新结果。


在 Excel 中使用 VBA 代码对每 n 行向下求和

使用 VBA 宏是批量对每 n 行求和并将结果自动输出到指定列或区域的高效方式,尤其适合处理海量数据集的高级用户,或需要定期执行重复性任务的场景。借助 VBA,该流程更具可定制性,但您需启用宏并具备对 VBA 编辑器界面的基本操作能力。请务必准确选择源数据区域和输出位置,避免覆盖现有数据。

1. 按 Alt + F11 打开 Microsoft Visual Basic for Applications 编辑器。在编辑器中,单击插入> 模块 以创建新模块,并将以下代码复制到模块窗口中:

Sub SumEveryNRows()
    Dim srcRange As Range
    Dim resultCol As Range
    Dim nRows As Integer
    Dim outRow As Long
    Dim i As Long
    Dim sumVal As Double
    Dim lastRow As Long
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set srcRange = Application.InputBox("Select the data range to sum:", xTitleId, "", Type:=8)
    If srcRange Is Nothing Then Exit Sub
    
    Set resultCol = Application.InputBox("Select the top cell where to output the results:", xTitleId, "", Type:=8)
    If resultCol Is Nothing Then Exit Sub
    
    nRows = Application.InputBox("How many rows per sum?", xTitleId, 5, Type:=1)
    If nRows < 1 Then Exit Sub
    
    lastRow = srcRange.Rows.Count
    outRow = 0
    
    For i = 1 To lastRow Step nRows
        sumVal = Application.WorksheetFunction.Sum(srcRange.Cells(i, 1).Resize(Application.WorksheetFunction.Min(nRows, lastRow - i + 1), 1))
        resultCol.Offset(outRow, 0).Value = sumVal
        outRow = outRow + 1
    Next i
End Sub

2. 返回 Excel,然后按 F8 键,或点击“运行”。

  • 宏将提示您选择所需的数据区域(例如 B2:B101)。
  • 接下来,请选择上方用于输出总和的单元格(通常位于空白列中,例如 C2)。
  • 请输入每组所需的行数(例如:5)。

该宏将自动计算每 n 行的总和,并依次将结果输出至您指定的列中。若最后一组不足 n 行,仍会对其余行求和。如不慎选错单元格,可随时取消操作或重新运行宏。此方法灵活高效,完美契合重复性或自动化汇总需求。

提示与故障排除:

  • 运行宏前,请务必备份数据,以防意外修改。
  • 请确保您的工作簿已启用宏(依次点击“文件”>“选项”>“信任中心”)。
  • 如遇权限错误,请检查工作表保护设置或区域限制。

相关文章:

如何在 Excel 中根据文本条件对数值进行求和?

如何在 Excel 中对包含拆分后的文本和数字的单元格进行求和?

最佳办公效率工具

🤖KUTOOLS AI 助手:基于以下内容革新数据分析:智能执行   |  生成代码|  创建自定义公式  |  数据分析及生成图表|  调用 Kutools Functions……
热门功能查找、高亮或标记重复项   |  删除空白行   |  合并列或单元格且不丢失数据   |  不使用公式的四舍五入……
高级 LOOKUP多条件 VLookup  |  多值 VLookup  |   跨多工作表 VLookup   |   模糊查找……
高级下拉列表快速创建下拉列表   |  级联下拉列表   |  多选下拉列表……
列管理器添加指定数量的列|移动列|切换隐藏列的可见性状态|比较区域与列……
特色功能网格聚焦   |  设计视图   |增强编辑栏   | 工作簿和表管理器   |  资源库(自动文本)|  日期提取   |  汇总工作表  |  加密/解密单元格   | 按列表发送邮件   |  超级筛选   |   特殊筛选(筛选粗体单元格/斜体/删除线……) ......
精选 15 工具集12 文本工具添加文本删除特定字符,……)|   50+ 图表 类型甘特图,……)|   40+ 实用公式基于生日计算年龄,……)|   19 插入工具插入二维码从路径插入图片,……)|   12 转换工具小写金额转大写汇率转换,……)|   7 合并和拆分工具高级合并行分割单元格,……)|……更多
在您的首选语言中使用 Kutools – 支持英语、西班牙语、德语、法语、中文及 40+ 种其他语言!

使用 Kutools for Excel 大幅提升您的 Excel 技能,体验前所未有的高效。Kutools for Excel 提供 300 多项高级功能,助您提升生产力、节省时间。立即点击此处,获取您最需要的功能……


Office Tab 为 Office 带来标签式界面,让您的工作更轻松

  • 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中启用标签式编辑和阅读
  • 在同一个窗口的新标签页中打开并创建多个文档,而非在新窗口中。
  • 将您的工作效率提升 50%,每天减少数百次鼠标点击!

所有 Kutools 插件,一个安装程序

Kutools for Office 套件捆绑了适用于 Excel、Word、Outlook 和 PowerPoint 的插件以及 Office Tab Pro,非常适合需要跨多个 Office 应用高效协作的团队。

ExcelWordOutlookTabsPowerPoint
  • 一体化套件— Excel、Word、Outlook 和 PowerPoint 插件 + Office Tab Pro
  • 一个安装程序,一个许可证— 几分钟内完成设置(支持 MSI)
  • 协同效果更佳— 在多个 Office 应用中实现高效协同
  • 30 天全功能试用— 无需注册,无需信用卡
  • 超值之选— 比单独购买插件更省钱