2013-06-27 55 views
0

我正在處理一個單元格公式,它將在表上執行2維查找。使用VLOOKUP和MATCH在Excel中查找2-Way Table返回錯誤

我的公式如下:

=VLOOKUP(A97,A4:L10,MATCH(B96,A4:L4,0),FALSE) 

然而,它返回一個#N/A錯誤。我想知道它是否與格式有關,但我不能肯定地說。在任何情況下,我的表格數組的列標題都被格式化爲數字(年),行標籤被格式化爲文本,並且數組中的實際數據是自定義格式,數據從工作簿中的其他工作表中拉出。

它是格式化的東西,還是不是一個因素?如果不是,這個配方本身有什麼問題嗎?

謝謝。

-Sean

+1

那麼B96包含特定年份?嘗試自己測試匹配部分 - 是否= MATCH(B96,A4:L4,0)'給你#N/A? - 如果B96是一個日期,那麼將公式中的B96更改爲YEAR(B96) –

+3

VLOOKUP和MATCH有點奇怪的組合 - 你的意思是使用INDEX和MATCH嗎? –

+0

儘管INDEX/MATCH/MATCH比較常見,但它是一種可行的二維查找方法..... MATCH確定VLOOKUP的column_index,即返回結果的列 –

回答

1

感謝@barryhoudini和@DaveSexton的解決方案...我只是記錄它正式。

首先,我收到的錯誤是由於源單元格的格式造成的。因此,根據Barry的建議,我將一個「」連接到我的單元格引用的末尾,該引用將源單元格格式化爲文本,從而使該函數可以工作。新代碼:

=VLOOKUP(A97,A4:L10,MATCH(B96&"",A4:L4,0),FALSE) 

其次,每戴夫的建議,我摒棄,取而代之的INDEX/MATCH /匹配方法的VLOOKUP /匹配方法。 E.G:

=INDEX(A1:E14, MATCH(H2,A1:A14,0), MATCH(H3,A1:E1,0)) 

謝謝你們的幫助。