
通常在Excel中要从一列中提取包含指定内容的数据,可以用自动筛选中的自定义筛选,并设置所包含的字符。如果要用公式来实现这种类似筛选的效果,可以在数组公式中用SEARCH函数来查找所包含的字符。假如在A2:A100区域中包含一些成语,要从中提取包含“一”字的成语。
在B2单元格中输入数组公式:
=INDEX($A$2:$A$100,SMALL(IF(ISERROR(SEARCH("一",$A$2:$A$100)),"",ROW($1:$99)),ROW(A1)),1)
公式输入完毕按Ctrl Shift Enter结束,然后拖动填充柄向下填充,直到出现“#NUM!”为止,下同。
excel数组公式获取某列包含数据的最后一行行号
要获取某列最后一个包含数据的单元格所在行的行号,可以用下面的几个数组公式,以A列为例: =MAX(NOT(ISBLANK(A1:A65535))*ROW(1:65535)) 公式输入完毕按Ctrl Shift Enter结束(下同),该公式对A列中每个包含数据的单元格指定其行号,对空单元格返回“0&rdqu
类似的,如果要从A列中提取开头为“一”字的成语,可用LEFT函数:
=INDEX($A$2:$A$100,SMALL(IF(LEFT($A$2:$A$100,1)<>"一","",ROW($1:$99)),ROW(A1)),1)
提取A列中第二个字为“一”的成语,用MID函数:
=INDEX($A$2:$A$100,SMALL(IF(MID($A$2:$A$100,2,1)<>"一","",ROW($1:$99)),ROW(A1)),1)
提取A列中最后一字为“一”的成语,用RIGHT函数:
=INDEX($A$2:$A$100,SMALL(IF(RIGHT($A$2:$A$100,1)<>"一","",ROW($1:$99)),ROW(A1)),1)
excel类似VLOOKUP能返回多个查询值的数组公式
在Excel中使用VLOOKUP函数可以在表格数组的首列查找指定的值,然后返回当前行中其他列的值。但表格数组第一列中有两个或多个值与查找值相匹配时,VLOOKUP函数只能返回第一个找到的值。如果要用公式返回与查找值相匹配的多个值,就像筛选的结果一样,可以用下面的数组公式。 假如要查找的区域为A2:B15,要查询&ld