我最近发布了很多 Array/Spill Range 答案,试图生成非 vba/App Script 解决方案。但是,我遇到了数组中的数组没有像我预期的那样溢出的情况。这个特定的问题使我发布了这个问题。
我正在解决的问题的概要:
- 中 5 列数据的起始值
A:E
。 - OP 想要前四列的唯一列表 (
A:D
) Column E
将值向右转置。
示例起始数据:
期望的结果:
我的解决方案电子表格发布在此处或查看您可以在重复选项卡中编辑的 google 表格版本。
我可以很容易地使用前四列
=UNIQUE(FILTER(A:D,NOT(ISBLANK((A:A)))))
然后我可以使用下面的函数来创建转置值以向右溢出(如上所示)。
=TRANSPOSE(FILTER(E:E,(NOT(ISBLANK(E:E))*(A:A&B:B&C:C&D:D=I1&J1&K1&L1))))
我的挑战是让上面的公式溢出以匹配前四列。显然我可以将公式向下拖动(这是我的建议),但我怎样才能使这个公式动态地向下溢出,类似于前四列?在我看来,下面的公式应该可以工作,但它会引发错误:
=FILTER(TRANSPOSE(FILTER($E:$E,(NOT(ISBLANK($E:$E))*($A:$A&$B:$B&$C:$C&$D:$D=I1:I999&J1:J999&K1:K999&L1:L999)))),NOT(ISBLANK(L1:L999)))
奖励/类似问题:我在这个答案中遇到了类似的问题。如果您能弄清楚如何column E
在此电子表格中制作动态溢出范围,我将支持答案。