【问题标题】:Filtering name with two condition使用两个条件过滤名称
【发布时间】:2020-08-28 16:02:19
【问题描述】:

我在这个文件中有一个学生和成绩/科目的样本列表 enter image description here https://docs.google.com/spreadsheets/d/1NeHlUaRnbvdJ2yJ38fUETGgBoYseQ8CuXmwRCwObAlM/edit#gid=0

在 A16:A 范围内,当我选中 B15:k15 上的任何复选框时,我想查看成绩在 90-100 左右的姓名列表

第一个例子是当我检查所有的框时

我只会看到名单上的第一个名字,因为他是唯一一个所有科目得分都在 90-100 分的人

我检查 B15 和 C15 时的第二个示例

我只会看到名单上的第一个和第二个名字,因为他是那些只能在这两个科目上获得 90-100 分的人。

有没有办法进行这种过滤?非常感谢

【问题讨论】:

    标签: google-apps-script google-sheets google-workspace


    【解决方案1】:

    由于这是您的第一篇文章,我将采用我认为您会发现最容易理解的方法。这是一个很长的公式(我已将其放在 A16 中名为“Erik Help”的新工作表中),但它只是多次重复相同的元素:

    =FILTER(A2:K11, IF(B15=TRUE, B2:B11>=90, B2:B11^0), IF(C15=TRUE, C2:C11>=90, B2:B11^0), IF(D15=TRUE, D2:D11>=90, D2:D11^0), IF(E15=TRUE, E2:E11>=90, E2:E11^0), IF(F15=TRUE, F2:F11>=90, F2:F11^0), IF(G15=TRUE, G2:G11>=90, G2:G11^0), IF(H15=TRUE, H2:H11>=90, H2:H11^0), IF(I15=TRUE, I2:I11>=90, I2:I11^0), IF(J15=TRUE, J2:J11>=90, J2:J11^0), IF(K15=TRUE, K2:K11>=90, K2:K11^0))
    

    FILTER 的第一个参数告诉函数要过滤什么(在本例中为 A2:K11)。

    之后,设置一个 IF 语句来检查每个复选框。如果选中该复选框,过滤器将只包括在该科目中获得 90 分或更高分的学生。

    如果未选中该复选框,则自动包含学生(即显示“B2:B11^0”等的部分,因为任何零幂等于 1,并且 1 和 TRUE 与谷歌表格)。换句话说,如果没有选中任何复选框,那么所有学生都会对所有科目阅读 TRUE,即,所有学生都将被包括在内(或者,换一种说法,没有人被排除在外)。虽然 ^0 不是绝对必要的(即,除零以外的任何数字都与 TRUE 相同),但我认为如果将 TRUE 表示为 TRUE 或 1,它是更好的公式练习,并且其他人更容易理解。

    我还在 A15:A 上设置了条件格式,将名称加粗。 (条件格式规则用英语表示,“如果有任何内容,请使用粗体。”)您可以通过单击 A15:A 范围内的任意位置,然后选择 格式 > 条件格式 来查看规则菜单并单击打开屏幕右侧窗口中显示的规则。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多