Excel VLOOKUP找不到正确的行

我有以下两列的表格:

 102-6956821-1091413 1
 115-8766130-0234619 2
 109-8688911-2954602 3
 109-7731824-8641056 4

如果我放入下面的VLOOKUP:

 = + VLOOKUP(B2,B $ 2:C $ 5,2)

我得到的结果是:

 1
 2
 1
 1

如果我将其更改为= + VLOOKUP(B2,B $ 2:C $ 5,2,FALSE),则得到预期的结果:

 1
 2
 3
 4

但为什么呢? 有一个确切的匹配,所以为什么它需要近似? 如果是这样,为什么它产生的数字呢? 它如何将文本值减less到近似值? 谢谢!

为了回答而从评论转移:

如果您的search列表(ColumnB)已sorting,您将会看到您期望的结果(尽pipe顺序不同)。 为了加快速度,VLOOKUP正在使用二进制search方法 ,为了获得有意义的结果,有序列表是必需的。 只有未sorting列表的前半部分有精确的匹配(因此12是正确的,但是11都不是)。