Excel:在一个表列中查找值,并在另一个稀疏填充的列中查找最接近的值

我在Excel中有一个如下的数据表。 我很想知道如何find正确的数据的最接近的价值。 因此,我可以在1月6日做一个VLOOKUP或INDEX MATCH的工作例子。但是如果我查找1月8日,我会得到0,但是我想得到最接近的值,或者如果更容易,我想获得最后一个已知的值从下一列是103.对于1月19日,我想92等,我可以在VBA编码,但我真的很喜欢一个Excel公式来做到这一点,我想不出如何做到这一点!

╔═══════════╦═══════╗ ║ Date ║ Value ║ ╠═══════════╬═══════╣ ║ 05-Jan-14 ║ 102 ║ ║ 06-Jan-14 ║ 103 ║ ║ 07-Jan-14 ║ ║ ║ 08-Jan-14 ║ ║ ║ 09-Jan-14 ║ ║ ║ 10-Jan-14 ║ ║ ║ 11-Jan-14 ║ ║ ║ 12-Jan-14 ║ 99.9 ║ ║ 13-Jan-14 ║ ║ ║ 14-Jan-14 ║ ║ ║ 15-Jan-14 ║ ║ ║ 16-Jan-14 ║ ║ ║ 17-Jan-14 ║ ║ ║ 18-Jan-14 ║ 92 ║ ║ 19-Jan-14 ║ ║ ║ 20-Jan-14 ║ ║ ║ 21-Jan-14 ║ 94 ║ ╚═══════════╩═══════╝ 

这种方法适用于我:

假设你的数据在A2:B18范围内,你的目标date是08年1月8日,那么你可以使用下面的数组公式:

 =VLOOKUP(C1,IF(B2:B18<>"",A2:B18),2,1) 

请注意,这是一个数组公式,因此您需要按CTRL + SHIFT + ENTER