Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 如何在谷歌电子表格中用零代替过滤公式中的错误_Google Apps Script_Google Sheets - Fatal编程技术网

Google apps script 如何在谷歌电子表格中用零代替过滤公式中的错误

Google apps script 如何在谷歌电子表格中用零代替过滤公式中的错误,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我不熟悉谷歌电子表格功能,并尝试以以下方式应用公式: 我将sheet1和sheet2放在一个工作簿中(name-formula4)。我使用以下公式计算从sheet1到sheet2的过滤范围的乘积: =SUMPRODUCT(filter(Sheet1!$A$1:$A$401, (Sheet1!$B$1:$B$401>= E1) * (Sheet1!$B$1:$B$401<= E2))) =SUMPRODUCT(筛选器)(Sheet1!$A$1:$A$401,(Sheet1!$B$1:

我不熟悉谷歌电子表格功能,并尝试以以下方式应用公式:

我将
sheet1
sheet2
放在一个工作簿中(name-formula4)。我使用以下公式计算从
sheet1
sheet2
的过滤范围的乘积:

=SUMPRODUCT(filter(Sheet1!$A$1:$A$401, (Sheet1!$B$1:$B$401>= E1) * (Sheet1!$B$1:$B$401<= E2)))

=SUMPRODUCT(筛选器)(Sheet1!$A$1:$A$401,(Sheet1!$B$1:$B$401>=E1)*(Sheet1!$B$1:$B$401=E1)*(Sheet1!$B$1:$B$401>=E1)*(Sheet1!$B$1:$B$401>=E1)*(Sheet1!$B$B$1:$B$401我不推荐IFERRO,因为它会抑制所有类型的错误。这不是一个好的做法

你应该做的是

如果筛选器返回0项,则只显示0

否则,显示所有项目的总和

=IF(COUNT(FILTER(_range_,_condition_)) = 0, 0, SUM(FILTER(_range_,_condition_)))

我的工作表也有同样的问题。我同意上面的评论,隐藏错误不是最佳做法。但是隐藏N/A响应/自定义它是非常有用的!您需要将整个逻辑包装在NA语句中,以便首先从它开始。下面是如何使用您使用的公式执行类似操作

=IFNA(SUMPRODUCT(FILTER((Sheet1!$A$1:$A$401,
     (Sheet1!$B$1:$B$401>= E1)*(Sheet1!$B$1:$B$401<= E2))),
     "input text or response you want here")

你不能用=IFERROR函数将你的错误转换为0吗?请回答以下问题:对于法国用户来说,函数是
SIERREUR
,非常奇怪!一半的函数只翻译了:OI尝试了这一点,并且对空筛选结果的计数返回0。可能是空筛选结果的和导致了问题,对m来说e这似乎是错误的,没有元素的总和是0。因此Mohsin的解决方案是有效的,谢谢:)
IFNA()
是为了避免这个错误而制定的,这是正确的解决方案。
=IFNA(SUMPRODUCT(FILTER((Sheet1!$A$1:$A$401,
     (Sheet1!$B$1:$B$401>= E1)*(Sheet1!$B$1:$B$401<= E2))),
     "input text or response you want here")
=IFNA(SUMPRODUCT(FILTER((Sheet1!$A$1:$A$401,
       (Sheet1!$B$1:$B$401>= E1)*(Sheet1!$B$1:$B$401<= E2))),0)