Regex 根据复选框值与筛选器组合的查询

Regex 根据复选框值与筛选器组合的查询,regex,google-sheets,filter,array-formulas,google-sheets-query,Regex,Google Sheets,Filter,Array Formulas,Google Sheets Query,我想根据复选框条件使用多个筛选条件进行查询。 例如,我可以按选中的项目过滤项目,好的,但我希望通过在下面的复选框列中取出与值对应的所有项目,在相同的查询结果中组合过滤 类似于 =查询(A2:I;“选择G,H,I其中D=TRUE”&IF(A=TRUE;其中I=filter(A2:B;A2:A=TRUE)) 谢谢你的帮助。这是表格:您可以使用以下公式: =IFERROR(query({A2:I},"select Col7, Col8, Col9 w

我想根据复选框条件使用多个筛选条件进行查询。 例如,我可以按选中的项目过滤项目,好的,但我希望通过在下面的复选框列中取出与值对应的所有项目,在相同的查询结果中组合过滤

类似于
=查询(A2:I;“选择G,H,I其中D=TRUE”&IF(A=TRUE;其中I=filter(A2:B;A2:A=TRUE))


谢谢你的帮助。这是表格:

您可以使用以下公式:

=IFERROR(query({A2:I},"select Col7, Col8, Col9 
                         where Col8 matches 
     '"&REGEXREPLACE(Join("♜",TRANSPOSE(ArrayFormula(IF(D2:D=TRUE,"|"&E2:E,"")))),"^[\W]+|[(♜)]","")&"' 
                         and not Col9 matches 
     '"&REGEXREPLACE(Join("♜",TRANSPOSE(ArrayFormula(IF(A2:A=TRUE,"|"&B2:B,"")))),"^[\W]+|[(♜)]","")&"'"), 
                         "Nothing to show")

使用的功能:


    • 下面的示例显示了我在对marikamitsos的第一个答案的评论中提出的问题


      请记住,当一个答案回答了您的问题时,它甚至是其他人也能从中受益。很高兴我能提供帮助。作为旁注,通过使用高级公式,您的工作表可以变得更“轻”。我认为你也应该考虑重建这些。对不起,我有一个附属问题:在H栏中,我有混合的值,比如:蓝色,绿色,粉色。为了处理这样的参数,你能让你的函数更通用一些吗?谢谢,它处理您在
      E
      列中输入的任何颜色/值。该公式与列
      H
      无关。在工作表中,列E由列
      H
      中的唯一值填充。这意味着
      E2
      应该有公式
      =UNIQUE(H2:H)
      。这可能就是你出错的地方。是的,这是真的,对不起,我有一个例子,H中的值:“蓝色,粉色”,如果我在DE中勾选“粉色”和“蓝色”,它就不会对值“蓝色,粉色”进行排序