Google sheets 抑制-Google Sheets vlookup返回的不适用

Google sheets 抑制-Google Sheets vlookup返回的不适用,google-sheets,Google Sheets,我有一个googlesheet()和一个基本的vlookup来创建一个可求和的列。对于未找到的每个搜索键,它将返回“#N/A”,并将以下错误附加到这些单元格: 错误未找到值'me@me.com“在VLOOKUP评估中 经过多次搜索,我找到的唯一解决方案是将vlookup封装在IF(ISNA())中,如中所示。这是可行的,但看起来我真的不应该这么做。还有其他方法吗?抑制任何类型错误消息的更简单方法是使用包装器: 我认为没有比这更简单的方法了。根据设计,vlookup如果找不到密钥,则不应简单地返

我有一个googlesheet()和一个基本的vlookup来创建一个可求和的列。对于未找到的每个搜索键,它将返回“#N/A”,并将以下错误附加到这些单元格:

错误未找到值'me@me.com“在VLOOKUP评估中


经过多次搜索,我找到的唯一解决方案是将vlookup封装在IF(ISNA())中,如中所示。这是可行的,但看起来我真的不应该这么做。还有其他方法吗?

抑制任何类型错误消息的更简单方法是使用包装器:


我认为没有比这更简单的方法了。根据设计,
vlookup
如果找不到密钥,则不应简单地返回空白:这与找到密钥但第二列中的相应条目为空白的情况是无法区分的。必须抛出一些错误,然后由电子表格用户如何处理它。

更新2019-03-01:现在最好的解决方案是
=IFNA(VLOOKUP(…),0)
。看

您可以使用以下公式。它将用
0
替换
VLOOKUP(…)
返回的
#N/A

=SUMIF(VLOOKUP(…),"<>#N/A")
=SUMIF(VLOOKUP(…),“#不适用”)
它的工作原理:这使用了
SUMIF()
,只有一个值可以求和。因此,结果是一个值–如果不等于
#N/A
,则根据条件。但是,如果该值为
#N/A
,则总和为零。这就是
SUMIF()
的工作原理:如果没有值与条件匹配,则结果是
0
,而不是
NULL
,而不是

优势:

  • 与问题中引用的解决方案
    =IF(ISNA(VLOOKUP(…),“”,VLOOKUP(…)
    相比,此解决方案仅包含
    VLOOKUP(…)
    部分一次。这使得公式更短、更简单,并且避免了仅编辑两个
    VLOOKUP(…)
    部分中的一个时发生的错误

  • 与来自的解决方案
    =IFERROR(VLOOKUP(…)
    相比,错误不会被抑制,因为这会使检测和调试它们更加困难。只有
    #N/A
    值被抑制

=IFNA(VLOOKUP(…),“”)

不确定最近是否发生了变化,但是
IFNA
实现现在支持
VLOOKUP
的单个列表。也就是说,如果
,则不必将其包装在另一个

一个优点是,您可以选择
0
NULL
等作为失败时显示的值。

只需添加 是的,“” 到您的参数列表,如下所示:

IFS(条件1,值1,条件2,值2,真,“”)


这是可行的,因为IFS“返回一个对应于第一个真条件的值。”

我不清楚这里的问题是什么。。。你想知道是否有其他方法可以不用检查NA就可以做到这一点?@ChrisSteele-是的,没错。我将编辑以实际包含一个?谢谢你的有用包装!关于vlookup是有意义的,尽管我认为附加到单元格的错误就足够了。
=iferror(vlookup(A1,Lookup!A:B,2,FALSE,“your message”)
将用自定义消息替换#NA。使用此公式,您仍然会得到空单元格,因此您也应该对它们进行过滤。例如,您可以使用排序操作来完成此操作。此解决方案仅适用于数字字段。如果您想传递文本,请根据另一个答案使用
IFERROR()
。在谷歌工作表中测试时,我得到了“ISNA的参数数量错误。应为1个参数,但有2个参数。”。而且只有MS Excel>2013似乎有
IFNA(…)
。这真的适用于你的谷歌表单吗?谢谢你的评论-修复了上面的打字错误,因为这真的是
IFNA
。我努力向自己证明这一点。它确实有效,但不会在函数列表中列出
IFNA
,也不会在您键入时建议它。也许这是限量发行的?事实上,它是有效的!很好的发现,这是现在最好的解决方案。(只是没有看到Google Sheets手册中列出的
IFNA
,还以为你在谈论Excel。)这太神奇了!!我一直希望/等待这能简化一堆公式!我可以确认它的工作!
=SUMIF(VLOOKUP(…),"<>#N/A")