大家好,今天和大家分享的"如何筛选出大于80且小于90的数据?",具体要求是这样的,根据C列的建筑面积,把大于80m²且小于90²的数据找出来,如下图
一、解法1,辅助列 高级筛选
1、辅助列的公式截图
2、公式
=--LEFT(C2,LEN(C2)-1)更多Excel学习和问题请加群:289393114、570064677
3、公式解释
由于C列有文本字符M²,所以有len()-1得到从左边提取数字的个数
文本函数Left提取出来的数字是文本,所以要加--转换一下,把文本型的数字转为数值型的数字
另注意高级筛选要注意两点,条件区域一定要有列字段,第2点,而且关系两个条件要写在一行,如果是或者关系要分在两行写
4、动画操作
二、直接函数实现
1、公式截图
2、公式
=IFERROR(INDEX(A$1:A$10,SMALL(IF((--LEFT($C$2:$C$10,LEN($C$2:$C$10)-1)>80)*(--LEFT($C$2:$C$10,LEN($C$2:$C$10)-1)<90),ROW($C$2:$C$10),2^20),ROW(B1))),"")
3、公式解释
(--LEFT($C$2:$C$10,LEN($C$2:$C$10)-1)>80)*(--LEFT($C$2:$C$10,LEN($C$2:$C$10)-1)<90)同时满足这两个条件中间用乘号,如果只要满足一个就可以了,中间用加号,
为什么len函数后面要减1,因为最右边包含一个字符,
为什么lfet前面要加--?,因为文本函left函数提取是文本型数字
用if判断,如果满足这两个条件,就显示它们所在的行号,否则就显示2^20, 这个是2010版最大的行号1048576行
用small函数把满足条件的行号从小到大引用出来,作index函数第2参数,index函数第1参数数据源用的是绝对行引用,下拉不变,右拉要变,这个地方用得很经典。
最外层用iferror来屏蔽错误值
记得是数组公式,把公式复制到编辑栏,然后三键一齐下,Ctrl Shift 回车