Excel 为什么VLookup不一致?

Excel 为什么VLookup不一致?,excel,excel-formula,vlookup,Excel,Excel Formula,Vlookup,我在电子表格中使用了VLookup,结果非常不一致。例如,下面是我的工作表中使用VLookup查找的两个条目: Date | Transaction Type | Description | Paid Out | Paid In | Balance | Category xx-May-xx | ATM Withdrawal BARCLAYS BANK | ATM Withdrawal BARCLAYS BANK | £10.00

我在电子表格中使用了
VLookup
,结果非常不一致。例如,下面是我的工作表中使用VLookup查找的两个条目:

Date      | Transaction Type             | Description                  | Paid Out | Paid In | Balance | Category
xx-May-xx | ATM Withdrawal BARCLAYS BANK | ATM Withdrawal BARCLAYS BANK | £10.00   |         | £xxx.xx | #N/A
yy-May-yy | ATM Withdrawal NAT WEST      | ATM Withdrawal NAT WEST      | £10.00   |         | £yyy.yy | Cash
我用于查找的forumla引用了一个
CategoryLookup
表,该表有一堆空行(试图消除潜在问题),并具有以下内容:

Description                  | Category
(blank lines...)
ATM Withdrawal LINK          | Cash                  -- Row 25
ATM Withdrawal               | Cash
ATM Withdrawal BARCLAYS BANK | Cash                  -- Row 27
我在VLookup中使用的公式如下:
=VLookup([@Description],CategoryLookup!$A$2:$B$9999,2)
。我不明白为什么我的一些价值观会得到
#N/A
。如果我用我以前的类别查找替换空白行,那么它们看起来是返回的,即使它们不接近我正在查找的描述。


请注意,不幸的是,在这种情况下,我需要一个模糊查找,因为其他类别在匹配上并不那么精确。

您使用的公式没有任何模糊之处,它需要对列表进行排序。是吗?我以为最后一个参数(默认为true)是模糊搜索?我没有看到要排序的列表-这是基于描述字段的查找列表吗?最后一个参数控制vlookup是使用(fast),这需要对列表进行排序,还是使用naive scan(slow),这不需要排序。来自的“近似值”是一种不幸的说法,因为它听起来像是模糊匹配,而事实并非如此。这有点合理,因为如果对列表进行排序,它将返回一个接近查找值的值,但该值不在其上。@GSerg-hmm,谢谢。不是100%确定它会做我想做的,但我可以在破解一些代码和正则表达式之前尝试一下。是否要添加答案,我接受?如果确实需要模糊查找,