Excel 动态数组 - 可能的错误?

Excel Dynamic Arrays - possible bug?

我在单元格 B1:F1 中输入了 5 个数字。如果我写下面的公式:

= MIN( OFFSET( A1, 0, {1,3,5} ) )

那么它正确地return是单元格 B1、D1、F1 中最小的数字。 但是,如果我摆脱 MIN() 并制作公式:

= OFFSET( A1, 0, {1,3,5} )

我希望它将 return 3 个数字作为动态数组。它 return 一个大小正确的动态数组,但在 3 个单元格中的每个单元格中它都给我 #VALUE!。 这似乎是一个错误——我知道动态数组是相对较新的——但有人会有相反的想法吗?谢谢

最好只使用 INDEX,因为它不易变。

=INDEX(B1:F1,,{1,3,5})

编辑:

对于更通用的版本,请考虑:

=INDEX(1:1,,{2, 4, 6})

=INDEX(1:1,,{1, 3, 5}+1)

没关系! 它现在有效,但我没有改变任何东西。这一定是由于 OFFSET 是一个易变函数这一事实造成的...