Google 表格中用于数据过滤的多个相关下拉列表

问题描述 投票:0回答:1

我有一个公司及其项目组合的表,现在我想创建三个相互依赖的下拉列表,并根据它们来获取数据,这里所有的下拉列表必须同时是依赖和自给自足的,即它们应该根据它们的参数以及当它们一起应用时获取数据。让我给你一个我所需要的快照!让我们采用 5x5 网格,其中前两列是“行业”和“公司名称”,其余是“网络组合”、“登陆页面”和“品牌标识”等附属内容,我希望三个下拉菜单正常工作

  1. 行业过滤器 - 应返回特定行业的所有公司
  2. 公司过滤器 - 应返回特定行业中公司的所有抵押品
  3. 抵押品过滤器 - 应返回包含各自公司名称的特定列

这里的问题是所有下拉菜单都应该起作用,最后一个下拉菜单应该具有除前 2 个之外的列标题的值,即行业和公司作为搜索参数

Here's screenshot of Google sheet, where I'm attempting this

[表链接] https://docs.google.com/spreadsheets/d/1zelGmvl878brKZ8xJOLJCJVTYL6dX8x30eGsZv0tiq8/edit#gid=271482903

使用这个公式来获取值:

=QUERY(A3:H9, "SELECT * WHERE Col1 = '"&A2&"' AND Col2 = '"&B2&"' AND Col"&MATCH(C2, 2:2, 0)&" <> ''", 1)

但它不返回任何超链接文本,而是返回纯文本

google-sheets google-sheets-formula formula
1个回答
0
投票

感谢您提供更多信息!至于你的问题......遗憾的是查询只会返回一种数据类型,并且无法按要求运行。我确信有很多不同的方法可以返回您正在寻找的结果。我在示例中使用了 filter 方法。

    =Filter({{A3:B9},Indirect(ArrayFormula(TEXTJOIN(", ", TRUE, IF(C2:H2=C1, CHAR(COLUMN(C1:H1) + 64), ""))
)&3&":"&ArrayFormula(TEXTJOIN(", ", TRUE, IF(C2:H2=C1, CHAR(COLUMN(C1:H1) + 64), ""))
)&9)},A3:A9=A1, B3:B9=B1)

它根据您的选择采用自定义数组。

ArrayFormula(TEXTJOIN(", ", TRUE, IF(C2:H2=C1, CHAR(COLUMN(C1:H1) + 64), "")
返回要在间接公式中使用的列字母。您需要调整的只是范围以匹配您尝试过滤的范围。

 Indirect(ArrayFormula(TEXTJOIN(", ", TRUE, IF(C2:H2=C1, CHAR(COLUMN(C1:H1) + 64), ""))
)&3&":"&ArrayFormula(TEXTJOIN(", ", TRUE, IF(C2:H2=C1, CHAR(COLUMN(C1:H1) + 64), ""))
)&9)

这将返回 C1 中所选值的列引用。在您的示例中,如果选择“品牌标识”,则公式将返回

Indirect(E3:E9)
。祝您的项目顺利!

© www.soinside.com 2019 - 2024. All rights reserved.