首页 > 解决方案 > 查询、索引和过滤器

问题描述

我有一个学校项目,我需要按老师过滤学生。我有一个随机列表,其中每个学生都分配了一个老师(G2:H100),我需要为每个老师创建一个新工作表,但我的方式并没有像我想的那样工作。例如,我在一个选项卡中完成了这张表(图 1):

图1

这是单元格 L2 中的公式:

=QUERY(FILTER((G2:H100);INDEX((G2:H100);0;2)=H2);"Select Col1")

在蓝色方框中,正是我想要的:每行都列出了玛丽亚的学生姓名。

我不知道为什么我不能在绿色和棕色盒子上重复相同的结果。我对它们都有相同的公式,只是将 =H2 分别更改为 =H3 和 =H4。

结果:同一单元格中每位教师的姓名,未在另一行下方列出,一个蓝色框。我尝试了其他方法,但我可以找到解决方案。我希望有人帮我弄清楚发生了什么。

标签: google-sheetsgoogle-sheets-querygoogle-sheets-formulagoogle-query-language

解决方案


试试这些:

  • 二级: =QUERY($G$2:$H$100; "select G where H='"&K2&"'"; 0)
  • L12: =QUERY($G$2:$H$100; "select G where H='"&K12&"'"; 0)
  • L20: =QUERY($G$2:$H$100; "select G where H='"&K20&"'"; 0)

如果有空输出,请使用这些:

  • 二级: =QUERY(ARRAYFORMULA(TO_TEXT($G$2:$H$100)); "select Col1 where Col2='"&K2&"'"; 0)
  • L12: =QUERY(ARRAYFORMULA(TO_TEXT($G$2:$H$100)); "select Col1 where Col2='"&K12&"'"; 0)
  • L20: =QUERY(ARRAYFORMULA(TO_TEXT($G$2:$H$100)); "select Col1 where Col2='"&K20&"'"; 0)

推荐阅读