joe*_*hua 4 arrays excel excel-formula
假设我在 B2 中有公式=ROW(A1:A3)。这个公式给出了一个数组{1;2;3}。因为一个单元格只保存一个值,所以单元格B2显示的值为1。工作表中的任何位置,公式=B2给出1,而不是数组。但是,Excel 仍然记得该数组,因为公式仍在B2.
有什么方法可以让数组返回,以便整个数组,而不是它的单个元素,可以用于进一步操作?我正在寻找类似的东西OPERATION(B2) = {1;2;3}。例如,SUMPRODUCT(OPERATION(B2)) = SUMPRODUCT(ROW(A1:A3)) = 6。
作为解决方法,您可以将公式存储在名称管理器中,例如:
然后您可以将其用作 Excel 公式中的参考,例如=INDEX(Rows,2,1):
我意识到这不是 OP 问题的答案,因为他们没有最新的 Office 365。我把它放在这里,供以后来的人使用。
使用带有动态数组公式的最新 Office 365,此问题现已消失。
放置=ROW(1:3)或等效的动态数组公式=SEQUENCE(3)Excel 将自动向下溢出数组,而无需Ctrl- Shift- Enter:
现在可以通过仅A1通过#在引用后放置来引用来引用数组:
=SUM(A1#)
Run Code Online (Sandbox Code Playgroud)
那么无论数组中的数组如何A1更改,其他公式都不需要更改。
需要注意的是,A1 中的公式需要有溢出的空间。如果有一个单元格中包含任何位于溢出数组中的内容,它将返回一个错误。