如果你是excel 2016,可以如下操作
1、先将原始数据表建立一个查询,并加载到一个连接中
2、对查询数据进行合并查询
3、选择相关字段
4、添加一个自定义列,内容为 if([值]>=[表1.下限] and [值]<=[表1.上限]) then 1 else 0
5、对自定义列进行筛选,只留下对的
6、只保留结果列
7、加载到指定位置就可以了(图可以参考第一张)
如果只是固定在F列查询的,在F2输入公式下拉,数组公式按三键CTRL+SHIFT+回车 结束。
=INDEX(D:D,MIN(IF((A$2:A$10=F$1)*(B$2:B$10<=E2)*(C$2:C$10>=E2),ROW($2:$10),4^8)))&""
其实公式可改为这样,可以支持更多更完善的查询,在F2输入数组公式,要按三键 CTRL+SHIFT+回车 结束后,右拉至H列,再下拉即可。
多条件查询公式:
=INDEX($D:$D,MIN(IF(($A$2:$A$10=F$1)*($B$2:$B$10<=$E2)*($C$2:$C$10>=$E2),ROW($2:$10),4^8)))&""
我把文件传上来,请点击这回答右下角那个绿色的 “下载” 按钮,下载文件看看效果。
=INDEX(D:D,SMALL(IF(($B$2:$B$10<=E2)*($C$2:$C$10>=E2),ROW($A$2:$A$10),4^8),ROW(A1)))&""
数组,同时按CTRL SHIFT 回车键执行
你先前也提了这样一个问题,你都没有采纳我的?。。。。。。
你采纳的答案,如果是文本就错误,这个无论什么格式数据都可以。
=index(d:d,max((a1:a10=F1)*(b1:b10
输入
=IF(A1="W",-84,IF(A1="E",-94,IF(A1="D",-104,"")
或者输入
=VLOOKUP(A1,{"W",-84;"E",-94;"D",-104},2,0)
简化为
=-84-VLOOKUP(A1,{"W",0;"E",10;"D",20},2,0)