Google 基于列 header 的电子表格查询计数
Google Spreadsheet Query count based on column header
我有一个如下所示的电子表格:
Name 8/13/2020 | 8/17/2020 | 8/20/2020
John OT OT OT
Bob OT AL OT
Echo A LE OT
我想在一个单元格中输入一个日期,然后让它输出我有多少人在他们的列中有“OT”、“AL”或“LE”。因此,我考虑使用查询来执行此操作:
=QUERY(MySheet!B:P, "SELECT COUNT(D) WHERE D = 'OT' OR D = 'AL' OR D = 'LE' LABEL COUNT(D) ''")
但是,我总是必须指定它必须计数的列,有没有一种方法我可以不指定计数而是根据我在另一个字段中输入的日期匹配正确的列?
如果您知道我可以使用不使用查询的其他方法,那也可以作为答案。
尝试:
=COUNTIF(INDIRECT(
ADDRESS(6, MATCH(B2, 5:5, 0))&":"&
ADDRESS(ROWS(A:A), MATCH(B2, 5:5, 0))), "OT")
或:
=ARRAYFORMULA({A6:A, INDIRECT(
ADDRESS(6, MATCH(B2, 5:5, 0))&":"&
ADDRESS(ROWS(A:A), MATCH(B2, 5:5, 0)))})
或:
=ARRAYFORMULA(QUERY({A6:A, INDIRECT(
ADDRESS(6, MATCH(B2, 5:5, 0))&":"&
ADDRESS(ROWS(A:A), MATCH(B2, 5:5, 0)))},
"select Col1,count(Col1)
where Col1 is not null
group by Col1
pivot Col2"))
我有一个如下所示的电子表格:
Name 8/13/2020 | 8/17/2020 | 8/20/2020
John OT OT OT
Bob OT AL OT
Echo A LE OT
我想在一个单元格中输入一个日期,然后让它输出我有多少人在他们的列中有“OT”、“AL”或“LE”。因此,我考虑使用查询来执行此操作:
=QUERY(MySheet!B:P, "SELECT COUNT(D) WHERE D = 'OT' OR D = 'AL' OR D = 'LE' LABEL COUNT(D) ''")
但是,我总是必须指定它必须计数的列,有没有一种方法我可以不指定计数而是根据我在另一个字段中输入的日期匹配正确的列?
如果您知道我可以使用不使用查询的其他方法,那也可以作为答案。
尝试:
=COUNTIF(INDIRECT(
ADDRESS(6, MATCH(B2, 5:5, 0))&":"&
ADDRESS(ROWS(A:A), MATCH(B2, 5:5, 0))), "OT")
或:
=ARRAYFORMULA({A6:A, INDIRECT(
ADDRESS(6, MATCH(B2, 5:5, 0))&":"&
ADDRESS(ROWS(A:A), MATCH(B2, 5:5, 0)))})
或:
=ARRAYFORMULA(QUERY({A6:A, INDIRECT(
ADDRESS(6, MATCH(B2, 5:5, 0))&":"&
ADDRESS(ROWS(A:A), MATCH(B2, 5:5, 0)))},
"select Col1,count(Col1)
where Col1 is not null
group by Col1
pivot Col2"))