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
Checkbox 计数查询中不带ARRAYFORMULA的复选框_Checkbox_Google Sheets_Google Sheets Formula_Array Formulas_Google Sheets Query - Fatal编程技术网

Checkbox 计数查询中不带ARRAYFORMULA的复选框

Checkbox 计数查询中不带ARRAYFORMULA的复选框,checkbox,google-sheets,google-sheets-formula,array-formulas,google-sheets-query,Checkbox,Google Sheets,Google Sheets Formula,Array Formulas,Google Sheets Query,昨天,我学习了如何在单元格C1中写入内容,以获得添加的屏幕截图中显示的小表格,从而获得表格C1:D4。它是 =ARRAYFORMULA(QUERY({A:A\ B:B*1};"select Col1,sum(Col2) where Col1 is not null group by Col1")) 你能解释一下为什么需要ARRAYFORMULA函数吗?有没有一种方法可以简单地在C6中操作我的查询 =query(A:B;"select A,count(B) where A is not null

昨天,我学习了如何在单元格C1中写入内容,以获得添加的屏幕截图中显示的小表格,从而获得表格C1:D4。它是

=ARRAYFORMULA(QUERY({A:A\ B:B*1};"select Col1,sum(Col2) where Col1 is not null group by Col1"))
你能解释一下为什么需要ARRAYFORMULA函数吗?有没有一种方法可以简单地在C6中操作我的查询

=query(A:B;"select A,count(B) where A is not null group by A")
为了得到同样的结果?所以我只想操作查询字符串selecta,countB,其中A不是空的group by A。我不想添加额外的ARRAYFORMULA


需要使用arrayformula将范围B:B中的布尔值true(选中时为true),false(未选中时为false)转换为数字0和1

对于没有阵列公式的解决方案,请尝试

=query(A:B; "Select A, count(B) where B = true group by A")

看看这是否行得通?

因为这个乘法需要数组形式:B:B*1,这是将真/假转换成1/0所需要的。在你把它转换成1/0之后,你可以对它求和,听起来像是求和,但它仍然在计数,因为你没有大于1的值


C6中的公式计算所有复选框,无论它们是选中的还是未选中的

谢谢您的回答,是的,在我给出的示例中,这是有效的。但是你的解决方案有两个问题。第一:如果没有选中某个值的单个框,则忽略该值,而不是0。第二:这是一个更大查询的一部分,我还需要其他行。例如,我想有一个第三列,其中所有项目都被计算,而不仅仅是被检查的项目。在这种情况下,继续使用arrayformula的解决方案。它应该允许您有其他列的额外计数。数组公式需要,因为它有任何处理数组B:B*1的过程。您考虑过使用触发器吗?它将提供比使用公式更大的灵活性。