我有这个数据。
| 编码|开始日期|结束日期|类别|
| - -|- -|- -|- -|
| 五十四|2021年3月1日|2020年10月10日|一百六十六|
| 五十四|2021年10月11日|九九年十二月三十一日|三百二十二|
| 一百零二|2020年4月10日|2021年8月31日|一百八十|
| 一百零二|2021年9月1日|2022年6月30日|一百九十|
| 一百零二|2022年7月1日|九九年十二月三十一日|二百|
我需要找到这个范围的de类
102 | 01/05/2021 | 31/05/2021
答案是190,因为在数据的第四个范围内。但我需要知道如何使这种Vlookup匹配近似日期和代码作为第二个条件。我试图使用Vlookup和匹配,但没有得到结果的直接上级值。
希望你能帮我。
我尝试将代码与开始日期连接,并使用VlookUp和AND,但没有成功。
2条答案
按热度按时间9rygscc11#
如果我没理解错的话...
列F1、G1、H1是要搜索的条件
但是消息方块会显示结果180,因为1-May-21到31-May-21在10-Apr-20到31-Aug-21的范围内。
代码只是创建了一个包含要搜索的代码的范围(在本例中为:102),将“102”替换为TRUE,将具有TRUE值的单元格设置为rg变量,然后将“102”从TRUE置回。
然后循环到rg变量中的每个单元格,将dBeg作为开始日期,dEnd作为结束日期。然后比较rgBeg是否大于dBeg,rgEnd是否小于dEnd...然后msgbox显示结果,即循环单元格的offset(0,2)值。
3pmvbmvn2#
如果您使用的是Excel 365或Excel 2021,则完全不需要VBA来执行此操作-只需使用FILTER函数即可。
假设左上角的表位于A1,而您的“搜索标准”位于F1:H1中,则在
I1
中输入以下公式将为您找到该类: