我有一个示例Google spreadsheet here。在该电子表格的Sheet2中,我使用查询创建了摘要:
=Query(Sheet1!A1:E24, "Select A, Count(E) GROUP BY A Pivot C")
但是我希望将每个测量员的数量计算在下一行,其总数与第3页中显示的数据透视表一样。是否可以使用查询本身计算总计?任何人都可以帮忙。
答案 0 :(得分:3)
这是一个老问题,但我只想出了这个问题。您可以使用= {}将多个查询产生的数组连接到一个函数中。这里描述了使用{}创建数组:Using arrrays in Google Sheets
设置它的最简单方法是分别完成每个部分,然后将它们重新组合成一个公式。
第一部分是您先做的查询。
=Query(Sheet1!A1:E24, "Select A, Count(E) GROUP BY A Pivot C")
第二部分是总计列。将此公式放在第一个查询结果右侧的列的顶部单元格中。
=Query(Sheet1!A1:E24, "Select Count(E) GROUP BY A label Count(E) 'Grand Total'")
第3部分是底行总数。把它放在第一个查询结果下面。无法删除数据透视表上的标题行,因此请转置非数据透视查询的结果。
=transpose(Query(Sheet1!A1:E24, "Select Count(E) GROUP BY C label Count(E) 'Grand Total'"))
第4部分是右下角的最终总细胞。标签的''是删除任何标签,只有一个单元格中的总数。
=Query(Sheet1!A1:E24, "Select Count(E) Label Count(E) ''")
如果它看起来都像你想要的那样,现在你把它放在一个公式中来替换原始查询并删除其他查询。全部包含在{},单独的列中,和行包含;。
={Query(Sheet1!A1:E24, "Select A, Count(E) GROUP BY A Pivot C"),Query(Sheet1!A1:E24, "Select Count(E) GROUP BY A label Count(E) 'Total'");transpose(Query(Sheet1!A1:E24, "Select Count(E) GROUP BY C label Count(E) 'Total'")),Query(Sheet1!A1:E24, "Select Count(E) Label Count(E) ''")}
答案 1 :(得分:1)
答案的1/2 ......一边的总数,但不是在底部
在表1中添加Col F
Grand Total
=COUNTIF(A$2:A$24,A2)
=COUNTIF(A$2:A$24,A3)
将查询更改为
=Query(Sheet1!A1:F24, "Select A, Count(B),F GROUP BY A, F pivot C ")