Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 3018|回复: 15

[已解决]Execl中我需要寻找函数范围值的数据,如何修改公式?

[复制链接]
发表于 2015-9-17 12:29 | 显示全部楼层 |阅读模式
我使用的公式是:INDEX(Sheet1!A:A,SMALL(IF(Sheet1!$B$2:$B$999<0,ROW($2:$999),4^8),ROW(A1)))&""
其中999<0,可以搜索到小于零的函数,将这个数值反转为0>999,则可以搜索到大于零的函数。
我求助的是如果我需要搜索60.05至80.30的数值或者-60.05至-80.30的数值时,我应该如何修改上面的公式?

最佳答案
2015-9-17 17:24
本帖最后由 高 于 2015-9-17 17:33 编辑
yxwinsy 发表于 2015-9-17 14:37
谢谢你的帮助,这个公式出现了错误的结果,我不知道在哪里出问题了

=INDEX(Sheet1!A:A,SMALL(IF((Sheet1!$B$2:$B$999<=80.3)*(Sheet1!$B$2:$B$999>=60.05),ROW($2:$999),4^8),ROW(A1)))&""
刚才真不对,现在对了
数组公式三键结束
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2015-9-17 12:37 | 显示全部楼层
取 60.05至80.30  之间的
把  Sheet1!$B$2:$B$999<0
改成 (Sheet1!$B$2:$B$999<=80.30)*(Sheet1!$B$2:$B$999>=60.05)
回复

使用道具 举报

发表于 2015-9-17 12:45 | 显示全部楼层
=INDEX(Sheet1!A:A,SMALL(IF((ABS(Sheet1!$B$2:$B$999)>=60.5)*(ABS(Sheet1!$B$2:$B$999)<=80.3),ROW($2:$999),4^8),ROW(A1)))&""
回复

使用道具 举报

发表于 2015-9-17 13:34 | 显示全部楼层
本帖最后由 高 于 2015-9-17 13:35 编辑

=INDEX(Sheet1!A:A,SMALL(IF(AND(Sheet1!$B$2:$B$999<=80.3,Sheet1!$B$2:$B$999>=60.05),ROW($2:$999),4^8),ROW(A1)))&""
加了and
回复

使用道具 举报

 楼主| 发表于 2015-9-17 14:34 | 显示全部楼层
云影 发表于 2015-9-17 12:45
=INDEX(Sheet1!A:A,SMALL(IF((ABS(Sheet1!$B$2:$B$999)>=60.5)*(ABS(Sheet1!$B$2:$B$999)

你这个公式,使用后出现了带有负值的数据,并且有一个在这个查找范围的值没有出现,我把abs改成and就出现全了,可还是带有负值〔小于0〕的值出现
回复

使用道具 举报

 楼主| 发表于 2015-9-17 14:37 | 显示全部楼层
高 发表于 2015-9-17 13:34
=INDEX(Sheet1!A:A,SMALL(IF(AND(Sheet1!$B$2:$B$999=60.05),ROW($2:$999),4^8),ROW(A1)))&""
加了and

谢谢你的帮助,这个公式出现了错误的结果,我不知道在哪里出问题了
回复

使用道具 举报

 楼主| 发表于 2015-9-17 14:44 | 显示全部楼层
云影 发表于 2015-9-17 12:45
=INDEX(Sheet1!A:A,SMALL(IF((ABS(Sheet1!$B$2:$B$999)>=60.5)*(ABS(Sheet1!$B$2:$B$999)

INDEX(Sheet1!A:A,SMALL(IF((AND(Sheet1!$B$2:$B$999)>=60.5)*(ABS(Sheet1!$B$2:$B$999)<=80.3),ROW($2:$999),4^8),ROW(A1)))&""

将前面的ABS改成AND就行,如果将后面的ABS也改成AND就不行
回复

使用道具 举报

发表于 2015-9-17 17:24 | 显示全部楼层    本楼为最佳答案   
本帖最后由 高 于 2015-9-17 17:33 编辑
yxwinsy 发表于 2015-9-17 14:37
谢谢你的帮助,这个公式出现了错误的结果,我不知道在哪里出问题了

=INDEX(Sheet1!A:A,SMALL(IF((Sheet1!$B$2:$B$999<=80.3)*(Sheet1!$B$2:$B$999>=60.05),ROW($2:$999),4^8),ROW(A1)))&""
刚才真不对,现在对了
数组公式三键结束

1.zip

7.47 KB, 下载次数: 5

回复

使用道具 举报

 楼主| 发表于 2015-9-17 18:35 | 显示全部楼层
非常感谢你,那还想再问下,刚才我是需要查询B列的函数,那如果我想寻找C列的应该怎么修改呢?我自己试过了,将公式里的4个B改成C,却没有结果。我是错在哪里了呢?
回复

使用道具 举报

 楼主| 发表于 2015-9-17 18:39 | 显示全部楼层
高 发表于 2015-9-17 17:24
=INDEX(Sheet1!A:A,SMALL(IF((Sheet1!$B$2:$B$999=60.05),ROW($2:$999),4^8),ROW(A1)))&""
刚才真不对, ...

谢谢了,我知道我错在哪里了,我将4个B改成C了,可数值没有更改,所以会找不到。再次感谢你的帮助
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-25 13:18 , Processed in 0.584791 second(s), 12 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表