![如何结合使用 AND 函数和 MATCH 函数来获取非“否”且之前未返回的内容](https://linux22.com/image/1463851/%E5%A6%82%E4%BD%95%E7%BB%93%E5%90%88%E4%BD%BF%E7%94%A8%20AND%20%E5%87%BD%E6%95%B0%E5%92%8C%20MATCH%20%E5%87%BD%E6%95%B0%E6%9D%A5%E8%8E%B7%E5%8F%96%E9%9D%9E%E2%80%9C%E5%90%A6%E2%80%9D%E4%B8%94%E4%B9%8B%E5%89%8D%E6%9C%AA%E8%BF%94%E5%9B%9E%E7%9A%84%E5%86%85%E5%AE%B9.png)
我有以下数据,需要返回所有非“否”的值。即,我想在另一列中创建一个包含列中所有非E
“否”值的列表。原始数据中永远不会有重复项(除了多次重复“否”)。
E
5 No
6 No
7 IC3
8 No
9 J1
10 J2
11 J3
12 No
目前,我可以得到第一个不等于“否”的值。我尝试使用 MATCH 函数返回值 <>“否”和 <>[先前单元格中的值]。
我在单元格 L12 中有以下公式
{=INDEX($E$5:$E$12,AND(MATCH(TRUE,$E$5:$E$12<>"No"),MATCH(TRUE,$E$5:$E$12<>$L$5:L11)),0)}
有人知道吗?
答案1
答案2
将这个用于确定预期回报数量的公式放入例如 L1 中:
=COUNTIF($E$5:$E$12,"<>No")
然后在您选择的第一个单元格中输入以下公式:
=IF(ROWS($1:1)>$L$1,"",INDEX($E:$E,AGGREGATE(15,6,ROW(E$5:E$12)/(E$5:E$12<>"No"),ROWS($1:1))))
(如果您使用的是 2010 之前的 Excel 版本,则需要进行一些小的修改。)
将此公式向下复制(但不是 L1 中的公式),直到结果开始为空白。
问候
答案3
以下是不需要辅助列的示例。假设您的数据从 A1 开始:
=IFERROR(INDEX(A$1:A$14,SMALL(IF(A$1:A$14<>"No",ROW(A$1:A$14)-MIN(ROW(A$1:A$14))+1,""),ROW())),"")
使用 ctrl+shift+enter 确认为数组公式,然后自动向下填充。它的书写方式必须从第一行开始,但如果需要,您可以调整最后一个 ROW() 以从其他位置开始。