我正在处理一个电子表格,我希望能够自动汇总一定数量的单元格。例如,我在参考单元格中输入 120 或 100,然后 Excel 会给出收入列中前 120 或 100 个单元格的总和。有没有办法做到这一点?我曾考虑过简单地命名单元格范围,如“top120revenue”和“top100revenue”等,但除了静态之外,使用 27 张纸也很复杂。如果存在公式,则只需更改工作表引用而不是重新标记单元格范围会更容易。也许答案在于 VBA,但我绝不是那里的专家
希望有人能帮忙!?
您是指位置上的前 n 个单元格还是n 个最高值?如果是前者,我会使用比 INDIRECT 更强大的 INDEX,即
=SUM(A1:INDEX(A:A,B1))
如果您的意思是 n 个最大值,请尝试
=SUMPRODUCT(LARGE(A:A,ROW(INDIRECT("1:"&B1))))
我想我在这里找到了你问题的答案。它使用函数INDIRECT()
。
例如:如果 columnA
包含您的数据并且B1
是包含 value 的参考单元格100
,则下面的公式给出 column 的前 100 个值的总和A
。
=SUM(A1:INDIRECT("A"&B1))
这被解释为:
=SUM(A1:A100)