在Excel中,我有一个包含数组的命名范围,例如下面的数组。
0 0 0 7
0 0 6 5
0 5 3 2
4 3 2 1
我想在数组的每一行(或列)中找到最大值。对于上面数组中的列,我希望结果为:
Array={4,5,6,7}
如果有帮助,最大值始终是列的最顶部数字和行的最左边数字。
我想要一个工作表公式而不是VBA函数。
答案 0 :(得分:0)
我找到了解决方案。如果我的初始数组名为 rng ,则可以使用以下数组公式返回显示每列中最大数字的数组:
=MAX(INDEX(rng,0,COLUMN(A1:D1)))
同样,要返回每行的最大值:
=MAX(INDEX(rng, ROW(A1:A4)))
答案 1 :(得分:0)
使用命名范围Rng和原始帖子中发布的值尝试此公式。
=SUBTOTAL(4,OFFSET(INDEX(Rng,1,1),,COLUMN(Rng)-MIN(COLUMN(Rng)),ROWS(Rng)))
返回每列{4,5,6,7}
返回每行的最大值。
=SUBTOTAL(4,OFFSET(INDEX(Rng,1,1),ROW(Rng)-MIN(ROW(Rng)),,,COLUMNS(Rng)))
和数组{7;6;5;4}.