我已尝试在网络上找到此解决方案但未成功解决此特定问题。在Excel 2010中,我在A列中有一些数据,其中每个值可能部分包含B列中的数据。
EX:
A列可能包含“http://google.com/webmasters”
B列可能包含“google.com”
这应该给我一个匹配。
我想在C列中打印A列中不包含B列中任何值的所有值。
EX:
A栏
http://dir.mydomain.tdl
http://myotherdomain.tdl
http://blog.otherdomain.tdl
http://www.lastdomain.tdl
B栏
mydomain.tdl
lastdomain.tdl
C栏(需要的结果)
http://myotherdomain.tdl
http://blog.otherdomain.tdl
非常感谢任何帮助。
答案 0 :(得分:0)
也许不是必须有效但你可以简单地使用两个数组 - 一个用于A列,一个用于B列。迭代ColumnA数组以查看它是否存在于ColumnB数组中(使用Array.IndexOf或.contains)。如果是,您可以将其从ColumnA数组中删除,并将C列中的剩余值作为余数输出。
答案 1 :(得分:0)
我认为我有使用 ARRAY 公式的解决方案。假设您的输入和列A-C具有标题,或者只是,字符串列在起始单元格A2和B2中,请执行以下操作:
=IF(OR(NOT(ISERROR(SEARCH(INDIRECT("B2:B"&(COUNTA($B:$B))),$A2)))),"",$A2)
,但按 CTRL + SHIFT + ENTER 而不是通常的 ENTER - 这将定义一个ARRAY公式,并在其周围生成{}
括号(但不要手动输入!)。你走了!这里的关键 - 我们检查A列中的每个字符串是否在B列中的字符串数组中至少有一个匹配,如果找到至少一个匹配则返回空字符串。
为方便起见,我们共享了样本文件:https://www.dropbox.com/s/janf0xxon4z2yh5/DomainsLookup.xlsx