获取具有多单元格引用的公式以重复引用,引用从上一个引用结束后开始

获取具有多单元格引用的公式以重复引用,引用从上一个引用结束后开始

我希望这是一个容易解决的简单问题,但到目前为止我还没有找到解决方案。

我正在尝试获取一长串数字并找出每组 60 个数字中的最高值。

在一列中找到最高值非常容易,但如何让以下公式重复呢?

=MAX(B1:B60)

我该如何编写公式才能找到B61:B120整个列的最大值等等?

答案1

这是另一个解决方案:

工作表截图

在任意列中输入以下公式(C例如)并按 Ctrl-Enter/复制粘贴/填充该列:

=MAX(INDEX(B:B,1+60*(ROW()-1)):INDEX(B:B,60*ROW()))

请注意,最好使用INDEX()而不是 ,INDIRECT()因为它是非易失性的。对于小型电子表格来说,这并没有太大的区别,但对于较大的电子表格,易失性函数会减慢计算速度。最好养成只使用非易失性函数的习惯。(当然,在可能的情况下。)

INDIRECT()另外,更重要的是,在这种特殊情况下(一般情况下),如果在目标列的左侧插入一列,公式将会中断。

答案2

现在您已经清楚自己在寻找什么,您需要的是以下功能:

=MAX(INDIRECT("$B"&(60*ROW()-59)):INDIRECT("$B"&(60*ROW())))

将其复制到您为结果选择的任何列的前 N ​​行中,其中 N 是列中的行数B除以 60。

INDIRECT()函数将包含单元格引用的字符串转换为单元格内容,因此结果列的前两行将解析为: -

=MAX($B1:$B60)
=MAX($B61:$B120)

我使用绝对列引用$B来强调您可以移动到另一列而不影响结果,尽管这是不必要的,因为列引用是文本,当公式复制到其他单元格时不会修改它。

相关内容