使用Google表格中的单个公式从范围创建动态排序和过滤的列表

时间:2019-12-30 09:23:19

标签: sorting google-sheets filtering array-formulas google-sheets-query

我正在尝试执行与此问题类似的操作:Google sheets using Filter and Sort together

我有一个两列的输入范围,作为输出,我想使用一个公式根据输入范围创建一个动态排序和过滤的列表。

有关所需结果,请参见此文档:https://docs.google.com/spreadsheets/d/109xcbORFZxTjH0Vjd6PVqYlOxMIdK7aXqf5-jnMMPik/edit?usp=sharing

我尝试了以下公式:=SORT(FILTER(B11:C100, B11:B100 = or(I11,I12,I13,I14)), 2, 0),但是它不起作用。我在这里做错了什么?任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:3)

尝试:

=ARRAYFORMULA(QUERY(B11:C, 
 "where lower(B) matches '"&TEXTJOIN("|", 1, LOWER(I11:I))&"' 
  order by C desc", 0))

enter image description here

答案 1 :(得分:1)

您可以按如下所示修改or(,,,,):

=SORT(
       FILTER(B11:C100, 
                ((B11:B100 = I11)*1+(B11:B100 = I12)*1+(B11:B100 = I13)*1+(B11:B100 = I14)*1)>0
       )
       , 2, 0
     )