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 个导入范围,因此它可能会更慢。
我尝试使用 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 个导入范围,因此它可能会更慢。