我想在 C3 中设置一个 ARRAYFORMULA 或类似的东西,它可以在使用 INDIRECT 动态更改名称时读取工作表,因此我可以使用 XMATCH 获得每个值的位置:
我第一次尝试这样做是在D3:
XMATCH(A3:A;间接(B3:B&"!$1:$1"))
但这有两个问题: 1:列的长度 A 和 B 可以动态变化,所以 C 必须是动态的。 2:不干净
在C3中我设置了以下公式:
ARRAYFORMULA(XMATCH(A3:A;间接(B3:B&"!$1:$1")))
也尝试过:
ARRAYFORMULA(XMATCH(A3:A;query(INDIRECT(B3:B&"!$1:$1");"select *")))
您可以看到这仅适用于第一个工作表名称“WHISKEY.US”,这看起来很合乎逻辑。
我敢打赌我们必须使用 MAP ,但是工作表的数量可能会改变,所以我们无法初始化东西。
你能试一试吗:
=map(A3:A;B3:B;lambda(a;b;if(len(a)*len(b);xmatch(a;indirect(b&"!1:1"));)))