我有一个数据框,其中包含一个任务列表,其中主要工作人员和辅助工作人员附加到任务。
例如,
**Job** | **Primary** | **Secondary**
Sales | Bob | John
Marketing | Jeff | Bob
Management | Steve | John
我的问题是,当Bob与Primary或Secondary匹配时,如何编写数组公式以返回作业列表?
到目前为止,我的公式是这样的:
=(IF(ROWS(D$3:D3)<=$E$1,INDEX(Jobs!$A$2:$A$3,SMALL(OR(Jobs!$B$2:$B$3=$D$1,Jobs!$C$2:$C$3=$D$1,ROW(Jobs!$A$2:$A$3)-ROW(Jobs!$A$2)+1),ROWS(D$3:D3))),""))
...其中D1包含Bob的名称,E1在任一列中包含COUNTIFS()
个名称的出现。
我在D3和D4中分别寻找的答案是&#34;销售,营销&#34;。
如果您需要任何澄清,请告诉我们!
答案 0 :(得分:1)
OR function在数组公式中表现不佳,因为它已经是数组处理的一种形式。
你的公式更好,
=IF(ROWS($3:3)<=$E$1,INDEX(Jobs!$A$1:$A$99, AGGREGATE(15, 6, ROW($1:$99)/SIGN((Jobs!$B$1:$B$99=$D$1)+(Jobs!$C$1:$C$99=$D$1)), ROWS($3:3))),"")
...或2010年之前,
=IF(ROWS($3:3)<=$E$1,INDEX(Jobs!$A$1:$A$99, SMALL(INDEX(ROW($1:$99)+((Jobs!$B$1:$B$99<>$D$1)*(Jobs!$C$1:$C$99<>$D$1))*1E+99, , ), ROWS($3:3))),"")
这些都是标准公式,不需要Ctrl + Shift + Enter。