对电子表格列中的前 N ​​个元素求和

对电子表格列中的前 N ​​个元素求和

我正在尝试对列中的前 N ​​个元素求和,其中 N 是另一个单元格中的值。我想出了这个:

=sum(B1:indirect(concatenate("B", A10)))

其中 A10 包含 N。但我不想在连接中对列标签进行硬编码,因为我希望它在移动列时继续起作用。我尝试使用该column()函数,但它返回一个数字,而不是字母。我试过

=char(code("A") + column() - 1)

但是一旦列达到 ,这个方法就会失败AA,而我已经到AK了。我可以在其中进行模 26 测试,但我认为必须有一种更简单的方法来获取列字母代码,或者进行变量求和。

我正在使用 Apple Numbers,但 Numbers、Excel、LibreOffice 等中的公式似乎都非常相似,因此如果您有适用于其他电子表格的建议,请不要保留。

答案1

为什么不将 OFFSET 函数与 SUM 结合使用?将偏移量固定在要求和的列的第一行,然后使用您放入另一个单元格的值 N 来设置偏移量返回的范围引用的高度。

例如,假设您要对 AK 列求和,并且您已在单元格 AZ1 中指定要求和的行数。求和的公式如下:

    =SUM(OFFSET(AK$1,1,0,AZ1,1))

这是一个数组公式,因此需要使用 CTRL-SHIFT-ENTER 输入。

相关内容