2016-08-25 71 views
0

我正在創建一個排序矩陣,其中列A具有部分列表,並且第1行以yyyy/mm填充了一年的幾周格式。我想要做的就是用矩陣中的數量數據填充矩陣,其中每個部分的需求數量按一年的週數列出。在此彙總表中,列A列出了部件,列B列出了周,列C列出了數量。使用INDEX-MATCH查找兩列中的值並返回第三個值

我一直在試圖編寫=INDEX(MATCH(),MATCH())公式類型,以便獲取列C的值,如果來自列A & B的值分別與矩陣表中列A和行1的值匹配,但卻具有一直只得到#REF錯誤作爲回報。此時我需要第二雙眼睛。下面是公式:

=INDEX(MRP!$C$1:$C$6400,MATCH(A2,MRP!$A$2:$A$6400,0),MATCH(B1,MRP!$B$2:$B$6400,0))

我要對這個正確的方式,或者需要另一種方法呢?

回答

1

小區B2 = SUMIFS(MRP $ C:$ C,MRP $ A:!$ A,工作表Sheet1 $ A3, MRP!$ B:$ B,Sheet1!B $ 1)

然後您可以複製這些文件。

1

您正在獲取#REF錯誤,因爲您超出了您嘗試匹配的數組範圍。索引函數有兩個參數和一個可選參數。

INDEX(array, row_num, [column_num]) 

看你的公式,

=INDEX(MRP!$C$1:$C$6400,MATCH(A2,MRP!$A$2:$A$6400,0),MATCH(B1,MRP!$B$2:$B$6400,0)) 
  • MRP!$C$1:$C$6400是要匹配
  • MATCH(A2,MRP!$A$2:$A$6400,0)獲取行號的數組。也許它應該是MATCH(A1....)
  • MATCH(B1,MRP!$B$2:$B$6400,0)獲得列號。

但是由於您的匹配數組只有一列,所以匹配函數的列號大於1,這在數組範圍之外。

如果您需要匹配列A和B兩個值,你可以用這個公式來匹配

=MATCH(lookup_value_1 & lookup_value_2, lookup_array_1 & lookup_array_2, match_type) 

對於你的情況下,這將是

=MATCH(A1 & B1, MRP!$A$2:$A$6400 & MRP!$B$2:$B$6400, 0) 

你需要使用Ctrl+Shift+Enter提交公式,而不是隻按Enter。這將得到行號,其中列A和列B匹配單元格A1B1

最後,你可以索引它

=INDEX(MRP!$C$1:$C$6400,Result from above match,0) 
+0

儘管我仍然在推薦的公式的第一步(即使在使用Ctrl + Shift + Enter後)仍然出現了「#NA」錯誤,但感覺還是很接近。我得到: '= INDEX(MRP!C2:C6400,MATCH(A2,MRP!A2:A6400,0))'返回第一個數量爲該部分列出的值。 '= INDEX(MRP!C2:C6400,MATCH(B1,MRP!B2:B6400,0))'返回爲yyyy/ww日期列出的第一個數量值。最終目標是細化搜索,以便在特定的yyyy/ww日期獲得該部分的具體數量。 –

+0

嘗試這一行'= MATCH(A1&B1,MRP!$ A $ 2:$ A $ 6400&MRP!$ B $ 2:$ B $ 6400,0)'。這意味着要準確找到您要查找的內容,即符合兩個標準的行。 – davidhu2000

+0

我仍然收到一個'#VALUE'錯誤(用Ctrl + Shift + Enter鍵變成'#N/A')。 –

0

我會用SUMIFS。在你的第二個片材在本月號創建一個幫助列,然後使用

=SUMIFS(sheet2!column C, sheet 2!helper column, month(sheet1!A$1),sheet2! column A, sheet1!$A1) 
相關問題