Google 工作表:按 QUERY 将两列与一些空单元格相加

Google Sheets: sum two columns by QUERY with some empty cells

我尝试使用 Google 表格中的 query 函数获取两列的总和。

  Col1   Col2    Col3
  -----------------------
  12             User1
  23     44      creature
         55      User1
  14             User1

如果每一列中至少有一个数字,则此方法工作正常:

=QUERY(IMPORTRANGE('SomeURL';"Page!A1:C");
"select (sum(Col1) + sum(Col2)) where Col3 = 'User1'")

但是,如果结果集中一列中的所有单元格都为空,则此查询会导致错误QUERY:AVG_SUM_ONLY_NUMERIC

  Col1   Col2    Col3
  -----------------------
  12             User1
  23     44      creature
                 User1
  14             User1

如果有时某一列中的单元格为空,我如何使用 query 函数获取列的总和?

    =ARRAYFORMULA(SUM(query(IMPORTRANGE("url","page!A1:C6"),"select Col1,Col2 where Col3 = 'User1'")))

这应该适用于简单的求和。但我认为 QUERY 中没有办法将空格视为零或将它们假设为数字。如果您实际上可以将范围导入 sheet(即,将它们用作辅助列),那么您可以使用 ARRAYFORMULA(Query ({filter (A1:B6*1,NOT(ISEMAIL(A1:A6))),C1:C6}, "select *.... 您应该在查询外转换空白(通过 *1)或在查询外对它们求和.或者使用双查询和双导入范围,这会降低性能。

您可以对查询求和,如下所示: =总和(查询('SomeURL';"Page!A1:C");"select Col1, Col2 where Col3 ='User1'"))

或使用 SUMIF() 两次,每列一次。不过,这意味着 2 个导入范围,因此它可能会更慢。