如何在 Excel 中使用 VLOOKUP 根据条件搜索特定值?

如何在 Excel 中使用 VLOOKUP 根据条件搜索特定值?

我需要将VLOOKUP最接近单元格的值D242作为 lookup_value 传递给函数。例如,我将日期30.08.12作为 lookup_value。如果没有值,30.08.12则搜索最接近 30.08.12 且小于 的值30.08.12。在本例中,它将是29.08.12

    =VLOOKUP(D242;Table_crs.accdb[[Date]:[Sell]];3;FALSE)
Where 
    1. D242 is lookup_value
    2. Table_crs.accdb[[Date]:[Sell]] is table_array
    3. 3 is col_index-_num
    4. FALSE is [range_lookup]

答案1

您实际上并不需要使用LOOKUPVLOOKUP,尝试通过使用 TRUE 作为 range_lookup 来修改原始公式,这将使其按照您想要的方式运行,即

=VLOOKUP(D242;Table_crs.accdb[[Date]:[Sell]];3;TRUE)

......或者像这样使用 LOOKUP

=LOOKUP(D242;Table_crs.accdb[[Date]:[Sell]])

这两个公式都要求按日期列升序排序(正如您的建议)

答案2

要使用LOOKUP函数作为lookup_value外部函数的参数VLOOKUP

=VLOOKUP(LOOKUP(D243;Table_crs.accdb[Date]);Table_crs.accdb[[Date]:[Sell]];3;FALSE)

使用 LOOKUP因为

如果 LOOKUP 找不到 lookup_value,它会匹配 lookup_vector 中小于或等于 lookup_value 的最大值。

相关内容