2014-02-07 14 views
3

enter image description hereVLOOKUP給#N/A,我不知道爲什麼

爲什麼不能正常工作?我試着檢查空白,確保長度是一樣的,等等。讓我瘋狂!我只想要阿拉巴馬!給出的錯誤是「價值不可用」。

+3

您的列順序錯誤。最左邊的列必須包含您匹配的值。你正在做的是在'State Name'列中尋找'AL'。當然,excel看不到它,因此返回'#N/A!'。 – L42

回答

10

通常的解決方案是應用= MATCH找到所述陣列中的行數:

=MATCH(D1,B:B,0) 

將用於ColumnB在D1值搜索(最後0恰好裝置),希望返回2(該所選陣列中的第二行 - 即ColumnB的整個區域)。這可以被送入:

=INDEX(A:A,MATCH(D1,B:B,0)) 

它成爲ColumnA的第二行,即Alabama

詳情這裏=MATCH=INDEXhttp://www.excelhero.com/blog/2011/03/the-imposing-index.html

+1

加一說明和教程鏈接:D – L42

+0

@ L42 TQ。通常我會刪除實際上重複的A,但對於這個我不確定(鑑於額外的細節)。我已經+1了你的A - 難以否認這是'適合目的'! – pnuts

+1

我曾經在我的監視器上有一個粘滯便箋,說'=索引(範圍,行,列)'和'匹配(什麼,行或列,0爲精確或1爲最近)'。這有助於內化語法並使我偏離Offset()。 – teylyn

0

公式在指定的第一列(列A)中查找「AL」。它只發現「阿拉巴馬州」,所以返回錯誤。

+0

我明白了。你會如何建議我得到阿拉巴馬州,而不切換列?我很感激。 – kayla

+0

您可以使用'match'和'offset'的組合。 'match'找到感興趣的行,然後你用那麼多行'抵消'。 – Roberto

+1

@TidusSmith或者您可以使用'INDEX和MATCH'組合。看我的帖子。 – L42

4

列的順序錯誤。最左邊的列必須包含您匹配的值。你在做什麼是尋找AL國名列。當然,excel看不到它,因此返回#N/A!

你可以試試這個:

=INDEX($A:$A,MATCH(D1,$B:$B,0),1) 

希望這有助於。

+1

+1,但還要注意,在只有一列或只有一行的範圍內,Index沒有第三個參數就可以正常工作。如果範圍是一列,只需do = index(column,number)。如果範圍是一行,那麼只需do = index(row,number)。第三個參數只在具有幾列和幾行的範圍內需要。然後第二個參數指定該列的行和第三個參數。 – teylyn

+0

@teylyn是對的。我完成語法的原因是讓OP得到公式的一個結果。 :D順便說一句,pnuts提供了一個完整的解釋和鏈接如何使用這些功能。 – L42

0

它可以稍微容易些,甚至:

=INDEX(A:A,MATCH(D1,B:B)) 
+1

這可能會在沒有完全匹配的情況下要求麻煩。 – pnuts

+0

同意。堅持精確匹配,然後使用= INDEX(A:A,MATCH(D1,B:B,0)) – unigeek

相關問題