【问题标题】:Google Sheet query to select one column and do two count谷歌表格查询选择一列并进行两次计数
【发布时间】:2020-09-28 20:35:23
【问题描述】:

我正在尝试选择 A 列,计算 A 列和 B 列并按 A 分组。但是当我这样做时,计数 B 返回与 A 相同的计数。

这是一个带有示例的工作表: https://docs.google.com/spreadsheets/d/1zpI3YjLYh9Mv2KCeuNk5TWtNKfyXpMb6OpGFlQtZ3Os/edit?usp=sharing

我在这里的目标是让 count(B) 基于 B 列,而不是像现在这样基于 A 列。

【问题讨论】:

    标签: google-sheets google-sheets-formula array-formulas


    【解决方案1】:

    您可以使用以下公式:

    City totals

    =SORT(UNIQUE({A2:A;B2:B}))
    

    Pick up

    =ArrayFormula(IF(E2:E<>"",COUNTIF(A:A,E2:E),""))
    

    Drop off

    =ArrayFormula(IF(E2:E<>"",COUNTIF(B:B,E2:E),""))
    

    【讨论】:

    • 谢谢@basic,H2:H 列中有什么内容?
    • ups,我删除了一些实验并更改了列索引。已更正。
    【解决方案2】:

    我认为您正在寻找这样的东西:

    =query({query(A2:B, "SELECT A, COUNT(A) WHERE A is not null GROUP BY A label A 'City Totals', COUNT(A) 'Pick Up' "),
    query(A2:B, "SELECT B, COUNT(B) WHERE B is not null GROUP BY B label B 'City Totals', COUNT(B) 'Drop Off' ")},
    "Select Col1,Col2,Col4")
    


    多个公式:

    D2=query(unique(flatten(A2:B)),"Select Col1 where Col1 is not NULL")

    E2=ARRAYFORMULA(IFERROR(VLOOKUP(D2:D15,query(A2:A, "SELECT A, COUNT(A) WHERE A is not null GROUP BY A label A 'City Totals', COUNT(A) 'Pick Up' "),{2},FALSE),0))

    F2=ARRAYFORMULA(IFERROR(VLOOKUP(D2:D15,query(B2:B, "SELECT B, COUNT(B) WHERE B is not null GROUP BY B label B 'City Totals', COUNT(B) 'Drop Off' "),{2},FALSE),0))

    【讨论】:

    • 谢谢马里奥斯,差不多了,这种方法的问题是它似乎只适用于 3 个城市?当我添加更多城市时,出现参考错误。
    • 因为A列和B列需要有相同的城市。如果您在 A 列中添加城市 4,那么您需要在 B 列中添加城市 4。@Windbox
    • 我明白了,这是唯一的方法吗?因为有时我可能在 A 或 B 列不存在的城市进行送货或取货。
    • @Windbox 我不相信至少在一个公式中还有其他解决方案。
    • @Windbox 如果需要,请查看我的多公式解决方案 :)
    猜你喜欢
    • 1970-01-01
    • 2022-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-04
    • 1970-01-01
    • 2021-01-08
    相关资源
    最近更新 更多