使用 Excel 365。
我在列中有一些文本数据A和乙喜欢:
101r MC
101r TU
101r VV
101r VL
w257 HU
w257 QI
w257 JJ
w257 YW
315L GD
315L OO
315L NL
w257 BHU
我想以二维格式总结
在D1我输入公式:
=UNIQUE(FILTER(A:A,LEN(A:A)))
效果很好,溢出效果也很好。E1我输入:
=TRANSPOSE(FILTER(B:B,A:A=D1))
这也奏效了,而且传播得很好。然后我手动复制E1向下得到:
我希望传播E1公式是动态的。
我已尝试过:
=TRANSPOSE(FILTER(B:B,A:A=INDEX(D:D,SEQUENCE(COUNTA(D:D)))))
=TRANSPOSE(FILTER(B:B,A:A=INDIRECT("D" & SEQUENCE(COUNTA(D:D)))))
这两个公式都不会溢出(或者根本就没用)但是,就其本身而言,以下部分确实有效:
=INDEX(D:D,SEQUENCE(COUNTA(D:D)))
是否可以拖动E1向下动态??
答案1
=INDEX(D:D,SEQUENCE(COUNTA(D:D)))
只是复制了结果D1:D3
,这与直接引用没有任何不同D1#
。
我认为这是不可能的。但也许这些尝试会让你或其他人更接近目标?
我尝试了一个混合公式(依赖于数组计算和隐式交集),利用隐式交集运算符 (@)。我还用 替换了 ,D:D
以便D1#
动态引用溢出范围,使用溢出范围运算符 (#)。
=TRANSPOSE(FILTER(B:B,A:A=@$D$1#))
这给出了可以手动复制粘贴到所有单元格的公式E1通过E3没有D1您的公式所需的相对参考。
有人可能会认为,不必复制粘贴此公式,而是可以将其输入到所有单元格中,如下所示CSE 数组公式,选择E1通过E3,输入公式,然后按Ctrl+ Shift+ Enter。但是,Excel 似乎不支持从 CSE 数组公式溢出。按照 E3 中的计算步骤进行操作评估公式对话框中,它得到了TRANSPOSE({"GD";"OO";"NL"})
,但最后一步不知何故将其变成了MC
。也许这是 Excel 的一个错误?无论如何,它有助于说明电子表格程序在解释不同维度的输入时可能遇到的困难。
我也尝试了最明显的方法=TRANSPOSE(FILTER(B:B,A:A=D1#))
。这只会返回#N/A
错误,因为FILTER(array, include, [if_empty])
未定义为接受二维include
参数。用维度为include
[Nx2] 的参数过滤 [Nx30] 数组是什么意思?溢出以适合您的问题似乎是合理的,但微软一定没有想到这一点,或者认为它通常很有用并且足够明确以致于可以实现。