如何在表格中创建自动累加间隔单元格的SUM函数以生成Sparkline?
隔行累计求和与Sparkline实现方案
一、自动生成累计求和公式
你的利润单元格按J10、J12、J14的规律间隔2行分布,可通过INDEX函数动态定位目标单元格,实现累计求和自动化:
1. 在连续区域生成连续累计值(方便做Sparkline)
假设在L列从L1开始生成累计结果:
- L1单元格输入:
=SUM(J10) - L2单元格输入:
=SUM(J10:INDEX(J:J,10+2*(ROW()-1))) - 下拉L2的公式,即可自动生成
SUM(J10:J12)、SUM(J10:J14)……以此类推。
原理:ROW()-1随下拉依次返回0、1、2……,10+2*(ROW()-1)精准计算出J列目标行号,INDEX(J:J,行号)定位到对应利润单元格,最终和J10组成动态求和范围。
2. 在利润行对应位置生成累计值
若要在K10、K12、K14对应位置生成累计值:
- K10输入:
=SUM(J10) - K12输入:
=SUM(J10:INDEX(J:J,ROW())) - 选中K12,按住Ctrl键下拉,公式会自动适配非连续行,仅在有利润的行计算累计值。
防错优化
避免下拉到无数据行出现错误值,可嵌套IFERROR:=IFERROR(SUM(J10:INDEX(J:J,10+2*(ROW()-1))),"")
二、生成累计盈利Sparkline
- 基于连续累计值生成:直接选中L列的连续累计值区域,点击Excel菜单栏「插入」→「Sparkline」→选择你需要的图表类型(如折线图),指定Sparkline放置的单元格即可。
- 基于非连续累计值生成:若累计值在K10、K12、K14这类非连续行,先转成连续区域:
- 在M1输入:
=INDEX(K:K,10+2*(ROW()-1)) - 下拉得到连续的累计值,再基于M列的连续区域生成Sparkline。
- 在M1输入:
内容的提问来源于stack exchange,提问作者david.cisneros
相关产品推荐
相关产品推荐

