@Peter:使用IF后ISERROR仍然不起作用......

@Peter:使用IF后ISERROR仍然不起作用......

我有两个工作表,一个包含电子邮件地址和信息列表,另一个包含应列入黑名单的电子邮件地址。为了删除列入黑名单的电子邮件地址,我认为在第一个工作表中添加一列会很方便,该列指示是否可以在黑名单工作表中找到该行中的电子邮件地址。

我尝试使用VLookupMatchSearch都没有得到我想要的结果......

我在这里做错了什么?

@Peter:使用IFISERROR仍然不起作用......

在此处输入图片描述

在此处输入图片描述

Vlookup第二行:=VLOOKUP(A2;Blacklist!A:B;2)

匹配第二行:=MATCH(A2;Blacklist!A:B)

搜索第二行:=SEARCH(A2;Blacklist!A:B)

工作表 在此处输入图片描述

黑名单 黑名单

@Peter Albert:添加0参数

在此处输入图片描述

在此处输入图片描述

答案1

您使用公式得到的是“奇怪”的结果,VLOOKUP因为在您的源数据范围(Blacklist!A:B)中,您尝试检索的值位于您尝试查找的值的左侧。

修复这个问题:

  1. 切换来源&图案列中的黑名单工作表,如下所示:

    在此处输入图片描述

  2. 不要忘记添加 VLOOKUP 的第 4 个参数。您的公式应该是:

    =VLOOKUP(A2,Blacklist!A:B,2,FALSE)

如果您的最终目标只是确定哪些电子邮件地址在黑名单中,您可以使用以下公式:

=IF(COUNTIF(Blacklist!B:B,A2), "Blacklisted", "Not Blacklisted")

Blacklist!B:B包含黑名单电子邮件地址的列在哪里

答案2

VLOOKUP 和 MATCH 有另一个参数,即 TRUE 或 FALSE。TRUE 是默认值,如果要搜索的数据未排序,则会导致错误结果!因此,只需在公式中添加 FALSE(或缩写为 0)即可!

对于您的情况,我将使用 MATCH 函数来确定是否有匹配项。如果找不到匹配项或匹配的数字,则 Match 返回 #N/A - 因此将其与 ISERROR 结合使用将为您提供最佳结果:

=IF(ISERROR(MATCH(A2;Blacklist!B:B;0));"未列入黑名单";"已列入黑名单!")

相关内容