我有一个带有基本vlookup 的Google Sheet(示例)来创建可汇总列.对于找不到的每个搜索键,它返回"#N/A",并将以下错误附加到这些单元格:
错误在VLOOKUP评估中未找到值'me@me.com'.
经过多次搜索,我找到的唯一解决方案是将vlookup包装在IF(ISNA())中,如何使用包含VLOOKUP公式的IMPORTRANGE链接各种Google电子表格而不返回#N/A?.这有效,但看起来我不应该这样做.还有另外一种方法吗?
小智 18
一种更简单的方法来抑制错误消息 - 任何类型 - 都是使用iferror包装器:
=iferror(vlookup(A1,Lookup!A:B,2,FALSE))
Run Code Online (Sandbox Code Playgroud)
我认为没有比这更简单的方法了.根据设计,vlookup如果未找到密钥,则不应简单地返回空白:这与找到密钥但第二列中的相应条目为空白的情况无法区分.必须抛出一些错误,然后由电子表格用户决定如何处理它.
tan*_*ius 18
您可以使用以下公式.它将替换with =IFNA(VLOOKUP(…), 0)返回的值.#N/AVLOOKUP(…)
=SUMIF(VLOOKUP(…),"<>#N/A")
Run Code Online (Sandbox Code Playgroud)
工作原理:0只使用一个值来总结.因此结果是一个值 - 如果不相等SUMIF(),则根据条件.#N/A但是,如果该值是,则总和为零.这就是如何#N/A工作:如果没有值匹配条件,结果是SUMIF(),而0不是NULL.
好处:
与#N/A问题中引用的解决方案相比,此解决方案=IF(ISNA(VLOOKUP(…)),"",VLOOKUP(…))仅包含该部分一次.这使得公式更短更简单,并且避免了仅编辑两个VLOOKUP(…)部分中的一个时发生的错误.
相较于解决VLOOKUP(…)从对方的回答,错误不会受到抑制,这将使检测和调试他们更加困难.仅=IFERROR(VLOOKUP(…))抑制值.
Ada*_*oll 12
=IFNA(VLOOKUP(...), "")
不确定最近是否已更改,但是IFNA实现支持VLOOKUPnow 的单个列表。也就是说,您不必将其包装在另一个中IF。
一个优点还有就是你可以选择"",0,NULL,等,价值上的故障显示。
| 归档时间: |
|
| 查看次数: |
33676 次 |
| 最近记录: |