中易网

excel里用vlookup查找最接近目标日期的方法

答案:4  悬赏:60  
解决时间 2021-01-29 00:36
excel里用vlookup查找最接近目标日期的方法
最佳答案
把G2公式改为这样就行:
=IF(F2="","",INDEX(B:B,MATCH(1=1,MIN(ABS(F2-A$2:A$4))=ABS(F2-A$2:A$4),)+1))


或者用这公式也行:
=IF(F2="","",LOOKUP(1,0/(MIN(ABS(F2-A$2:A$4))=ABS(F2-A$2:A$4)),B$2:B$4))


如果需要对比更大的范围,如A2:B1000,公式改为这样就行:
=IF(F2="","",INDEX(B:B,MATCH(1=1,MIN(ABS(F2-A$2:A$1000))=ABS(F2-A$2:A$1000),)+1))


以上的公式是数组公式,输入完成后不要直接回车,要按三键  CTRL+SHIFT+回车  结束。



原来提问中的公式,用的是VLOOKUP的糊模查找方式,它的规则是查找最接近当前值且比当前值小的一个数值为返回的结果,而提问中的2001-11-1虽然最接近2001-10-30,但却是比2001-10-30大,所以是不会返回想要的结果的。
 只有2001-10-1是同时符合比2001-10-30小,又是最接近的值,所以提问的公式就返回对应的B列结果 1 了。


我把文件传上来,请点击这回答右下角绿色的“点击下载”按钮,下载文件看看效果。



全部回答
如果 range_lookup 为 TRUE 或被省略,则返回精确匹配值或近似匹配值。
如果找不到精确匹配值,则返回小于 lookup_value 的最大值。 在A2:B4中没有精确配值,返回小于2001/10/30的最大值就是2001/10/1对应的值1,公式返回的值没有错.
=OFFSET($A$2,MATCH(SMALL(ABS(F2-OFFSET($A$2,,,COUNTA(A:A)-1,1)),1),ABS(F2-OFFSET($A$2,,,COUNTA(A:A)-1,1)),0)-1,1) 数组公式

=INDIRECT("B"&MATCH(MIN(ABS($A$2:$A$4-F2)),ABS($A$2:$A$4-F2),)+1)&""
同时按CTRL SHIFT  回车键
下拉
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
有叫"铁扫把"的草本科植物吗?
此动态图出自哪?右边这个女的是谁?
城市和乡村的区别,好处与坏处
大坝景区停车场地址有知道的么?有点事想过去
无级变速车(CVT)在行进当中将D档换入L档对
湖北广水农村商业银行地址在什么地方,我要处
8.4÷0.6x3.9怎么脱式计算
野猫跑到家里来是好还是坏
金点网咖怎么去啊,我要去那办事
jsp var 问题
去年买的17r6乞丐版,请问怎么换显卡
想象情境,在括号里填上恰当的词语.菊花在秋
白节粮站幼儿园地址在哪,我要去那里办事
依法治国的基本要求是:
周恩来在[关于和平谈判问题的报告]中有一句爱
推荐资讯
我想找个养马的工作
今有1000千克苹果,刚入库时测得含水量为96%
美睫小铺怎么去啊,我要去那办事
请大神 告诉我 这个韩国女人叫什么名?
路由器怎么同时设置IP协议和账号密码
还是别了是什么意思
问一个日本人日本也有元宵节吗?然后他回答:
十四岁该谈恋爱吗
QQ昵称,帮我用冰封尘世取个好看的名字
请教shell的读取文件内容
紫钰花园能按期交房吗?
为什么梦到和自己最讨厌的人做朋友
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?