答案1
筛选
自 2018 年以来筛选函数已引入 Excel 365,并将出现在 Excel 2021 中。从文档中可以很直观地看出该应用程序的外观。
=FILTER(A2:E5,F2:F5="x")
A2:E5
是您想要在结果中包含的单元格范围,F2:F5
即您想要过滤的行。
匹配
我最好的预过滤函数方法有点乱,但我会尝试一下MATCH
。假设我有以下设置
在列中,H
我想获取 x 出现的行。获取第一个 x 非常简单,只需一次MATCH
调用即可。H2
我有以下内容。
=MATCH("x",$F:$F,0)
但是,对于我想MATCH
再次使用的下一行,列范围必须从找到的最后一个 x 之后的一行开始。我将使用 执行此操作,INDIRECT
这将为我提供以下结果H3
。
=H2+MATCH("x",INDIRECT("F"&(H2+1)&":F"&ROWS(F:F)),0)
我H3
可以将所有内容拖到表格的最后一行。请注意,#NV
错误暂时不会困扰我们。
那么 H 列中应该显示的内容如下。
<empty>
3
5
#NV
#NV
或者,写为单元格公式:
<empty>
=MATCH("x",$F:$F,0)
=H2+MATCH("x",INDIRECT("F"&(H2+1)&":F"&ROWS(F:F)),0)
=H3+MATCH("x",INDIRECT("F"&(H3+1)&":F"&ROWS(F:F)),0)
=H4+MATCH("x",INDIRECT("F"&(H4+1)&":F"&ROWS(F:F)),0)
从那里我们可以使用矩阵公式I2
从原始表中复制数据。
=IFERROR(INDIRECT("A"&H2&":E"&H2),"")
您可以使用 ctrl+shift+enter 输入矩阵公式,或者更好的是,看看是否只需按 Enter 即可数组公式。之后,您应该能够将该单元格拖到表格下方以获得类似这样的结果。H
之后,您可以随意隐藏该列,这样它们#NV
就不可见了。
编辑:我必须手动将公式翻译成英文,希望不会出现任何意外错误