如何将 Arrayformula 与命名范围一起使用?

How to use Arrayformula with named ranges?

如何在另一个选项卡中同时获取命名范围的数据,以显示来自 sheet 数据的结果,使用下拉菜单选择名称并获取命名范围的范围?

example sheet.

如您所见,数据 sheet 包含所有数据,值选项卡应该是我使用下拉列表中的名称来获取旁边的结果的选项卡,但它不起作用,因为我错过了如何做到这一点的部分。

这可能不是最简单的方法,但对于您的示例 sheet,您可以使用以下公式:

=ARRAYFORMULA(indirect("data!B"&match($B;data!$A:$A;0)&":C"&match(VLOOKUP("*";indirect("data!A"&match($B;data!A:A;0)+1&":A"&match($B;data!$A:$A;0)+100);1;FALSE);data!$A:$A;0)-1))

它的作用是找到从下拉列表中选择的确切短语并获取该单元格的行号。此行号随后用于数组公式引用的第一部分。

要获取数组公式的最后一行编号,它会在该列中接下来的 100 个单元格中搜索下一个非空单元格。当找到下一个非空单元格时,它使用它的行号并减去​​ 1 以获得数组公式的另一个引用。

获得两个行号后,它使用 "indirect" 函数将它们组合到数组公式中。

如果你想像你为某些请求设置的那样使用命名范围,你可以在 C2 中使用它:

=indirect(B2)