我有一个属于两个组(A或B)的人员列表。我想创建一个列出属于组A的所有人的列。 我一直在想出一个数组公式,但我没有一个工作示例。任何帮助感谢!excel:使用公式筛选
姓名| Group |期望输出
Bob | A | Bob
Fred | B |埃里克
Matt | B |戴夫
Eric | A | Fred
Dave | A |
炖菜| B |
Fred | A |
提前
我有一个属于两个组(A或B)的人员列表。我想创建一个列出属于组A的所有人的列。 我一直在想出一个数组公式,但我没有一个工作示例。任何帮助感谢!excel:使用公式筛选
姓名| Group |期望输出
Bob | A | Bob
Fred | B |埃里克
Matt | B |戴夫
Eric | A | Fred
Dave | A |
炖菜| B |
Fred | A |
提前
为C列普通式:
C2=
=IFERROR(INDEX(A:A,AGGREGATE(15,6,ROW(B:B)/(B:B="A"),ROW()-1)), "")
复制/粘贴向下C
柱足够数量的细胞。
阵列式:在C
列选择足够数目的单元,并且写在公式栏中相同的公式,然后按Ctrl+Shift+Enter
非常感谢从这个
+---+-------+-------+
| | A | B |
+---+-------+-------+
| 1 | Name | Group |
| 2 | Nick | A |
| 3 | Marc | A |
| 4 | Manny | B |
| 5 | Luck | A |
+---+-------+-------+
你可以在过滤器的数据行标签和组创建名称两根枢轴表。 然后,您可以根据组别过滤只有人。
+---+-------------------+---+
| | A | B |
+---+-------------------+---+
| 1 | Group | A |
| 2 | | |
| 3 | Etichette di riga | |
| 4 | Luck | |
| 5 | Marc | |
| 6 | Nick | |
+---+-------------------+---+
感谢,但我需要动态引用它以后。我需要单元格来引用不是数据透视表 – Freelancer
所以,如果你的数据在范围内A1:B7
这将是公式:
=IFERROR(INDEX($A$1:$A$7,SMALL(IF($B$1:$B$7="A",ROW($A$1:$A$7)-ROW($A$1)+1),ROWS($A$1:A1))),"")
这是被施加Ctrl
+ Shift
+ Enter
,你将需要拖下来数组公式。
谢谢,当我尝试这样做时,我只会在整个公式数组中填充相同的值,即第一行。有任何想法吗? – Freelancer
你可以确认你是否使用了'Ctrl'+'Shift' +'Enter'。因为只有使用“输入”才能解决问题。 – zipa
谢谢,我试过这个,但是我在row函数里面得到一个除零的分割。加载true/false数组,就像行函数一样,但除法失败。有任何想法吗? – Freelancer
你好,我最终通过改变偏移量来获得这个工作。然而,我经常使用这个公式,并且它正在减慢我的整个工作表,并且在我试图通过它时需要很长时间来评估。关于如何使其更有效的任何想法。我一直在试图通过使用范围引用而不是整列来缩小范围,但我无法让它工作。 – Freelancer
@Freelancer尝试像这样:'= IFERROR(INDEX($ A $ 1:$ A $ 100,AGGREGATE(15,6,ROW($ B $ 1:$ B $ 100)/($ B $ 1:$ B $ 100 =“A” ),ROW() - 1)),“”)''。另外,请尽量不要将它放在太多的细胞中,只有足够的细胞才能得到所有的细胞。 –