假设我有一张包含三列的表:
我想要进行过滤以仅显示包含动物字段中的动物但不包含城市字段中的地名的行。
在这个例子中,我只想返回第 2 行,因为鸡肉在 C 列,但达拉斯不在 B 列。
从我读到的内容来看,我可能需要在新列中使用 COUNTIF,然后根据 0/1 进行过滤。但如果列不完全匹配,我很难让它正常工作。例如,如果它是“Dallas in Chicken”,我需要它仍然拾取行(不区分大小写和顺序)。
在 B 列和 C 列中每个条目的两侧添加通配符是否有帮助?
如果可能的话,我宁愿不使用 Access,因为我需要在 Excel 中进一步操作数据。
答案1
帮助列解决了该问题:
怎么运行的:
- 单元格中的公式
D31
来查找部分匹配。
=IFERROR(LOOKUP(1E+100,SEARCH(C$31:C$34,A31),C$31:C$34),"No Match")
注意: Lookup(1E+100,,
找到用包裹的最大匹配值SEARCH
,作为查找值输入,然后从右到左搜索查找数组中的第一个值,并忽略文本、错误和空白单元格。
- 单元格中的最终公式
E31
用于拉动行(A 列值) 与动物名称进行部分匹配。
=IFERROR(VLOOKUP($D31&"*",$A$31:$C$34,1,FALSE),"")
編輯:
如果出现类似于
Chick
、ick
或 的词Ick
, 中的公式E31
只需稍加修改。=IFERROR(VLOOKUP($D31&" *",$A$31:$C$35,1,FALSE),"")
*
符号前有空格,,(VLOOKUP($D31&" *",
。
- 向下填充公式。
- 根据需要调整公式中的单元格引用。