Google Sheets QUERY函数无匹配返回#N/A如何修改为返回0
Google Sheets QUERY函数无匹配返回0调整方案
你可以通过Google Sheets内置的错误捕获函数来处理无匹配场景的#N/A报错,以下是两种调整方案:
方案1:通用错误捕获(推荐)
使用IFERROR函数包裹原有公式,所有类型的错误都会返回0,直接适配你的需求:
=IFERROR(ABS(QUERY(Transactions,"SELECT SUM(E) WHERE D = '"&$F2&"' AND B > date '"&TEXT($C$1,"yyyy-mm-dd")&"' AND B <= date '"&TEXT($C$2,"yyyy-mm-dd")&"' GROUP BY D LABEL SUM(E) '' ",0)),0)
方案2:仅捕获无匹配的#N/A错误
如果希望其他类型的错误(比如日期格式错误、列引用错误)正常抛出方便排查,可使用仅识别#N/A类错误的IFNA函数:
=IFNA(ABS(QUERY(Transactions,"SELECT SUM(E) WHERE D = '"&$F2&"' AND B > date '"&TEXT($C$1,"yyyy-mm-dd")&"' AND B <= date '"&TEXT($C$2,"yyyy-mm-dd")&"' GROUP BY D LABEL SUM(E) '' ",0)),0)
原公式报错的原因是:当D列没有符合F2匹配条件的行时,QUERY函数不会返回任何有效计算结果,外层的ABS函数读取不到数值就会触发#N/A错误,错误捕获函数会识别这类异常返回你指定的0值。
内容的提问来源于stack exchange,提问作者JAK
相关产品推荐
相关产品推荐

