2015-09-02 31 views
1

我正在爲excel調度項目。在Excel中使用相同的值進行雙向查找#REF錯誤

我與我有一個以上的VLOOKUP和MATCH

enter image description here

第2行,數字(04,05,06)被格式化爲日期7#REF錯誤掙扎/ 4/2016,7/5/2016等

第9行(表8)的表格就是我輸入日期的地方。

的作品在B5罰款公式爲

=IF(VLOOKUP(A3,Table8[[#All],[Name]:[Date]],MATCH(B2,Table8[[#All],[Date]],0),FALSE)=B2,"OFFr","") 

一個簡單的複製和粘貼C5 ..但會返回#REF錯誤

=IF(VLOOKUP(A3,Table8[[#All],[Name]:[Date]],MATCH(C2,Table8[[#All],[Date]],0),FALSE)=C2,"OFFr","") 

回答

1

VLOOKUP function沒有做什麼你認爲它是。它在B5中正常工作,第二行(2)提供了VLOOKUP的column_num參數中的第二列。

使用AGGREGATE¹ function作爲匹配日期。

=IFERROR(IF(AGGREGATE(15, 6, Table8[date]/((Table8[name]=$A3)*(Table8[date]=B$2)), 1)=B$2, "OFFr"), "") 

AGGREGATE two column match

如果您的Excel是前2010或你需要提供向後兼容性,還有另外兩個欄比賽公式可用。

預xl2010兩列匹配:

=IFERROR(IF(INDEX(Table8[date],MAX(INDEX((ROW(Table8[name])-ROW(Table8[[#Headers],[name]]))*(Table8[name]=$A3)*(Table8[date]=B$2), ,)))=B$2, "OFFr"), "") 

¹AGGREGATE function用Excel 2010中引入的。它是不是在早期版本。

+0

謝謝!像魅力一樣工作 – hinteractive02

+0

無後顧之憂。如果您需要它,我已經添加了一個pre-xl2010解決方案。 – Jeeped