我正在Excel 2010中创建一个使用VLOOKUP
函数调用另一个工作表值的仪表板。
我正在使用的等式是:
= VLOOKUP(L $ 1,Sheet_B $ A:$ H,7,2)
L$1
在Sheet_A
上请求一个唯一标识符,然后在Sheet_B
上找到该ID,然后找到相应的数据并将其拉出。
问题是:
如果我对Sheet_B
什么都不做,我会得到一个值 - 让我们说5
。该值不正确。
如果我按字母顺序从AZ中排序Sheet_B
(这不会改变数据),我会得到一个完全不同的值 - 比方说12 - 这是正确的值。< / p>
问题是VLOOKUP
功能检查的数据没有改变,只有它在Sheet_B
中的排序方式。
有什么理由可能会发生这种情况吗?更重要的是,我如何修复它,以便每次拉这个仪表板时都不必对Sheet_B
进行排序?
答案 0 :(得分:4)
如果您的第4个参数等于True
(在您的情况下为2
),VLOOKUP
会尝试查找近似匹配,因此您需要{{1}的第一列中的值按升序排列。
如果您将其更改为table_array
(相当于0
),则False
会尝试找到完全匹配,因此无需进行排序。
因此,您应将VLOOKUP
更改为:
VLOOKUP