2014-04-30 32 views
0

我正在爲這個問題而苦苦掙扎。如何通過匹配多個列和行來從單元格範圍獲取單個值

這裏從 '工作表Sheet1' 是數據:

|| A  B  C  D  E 
========================================= 
1 || C1  C2  X1  X2  X3 
......................................... 
2 || a  b  1  2  3 
3 || a  d  10  11  12 
4 || c  d  4  5  6 
5 || c  f  13  14  15 
6 || e  f  7  8  9 
7 || e  b  16  17  18 

這裏的數據在 「Sheet2的」:

|| A  B  C  D 
================================= 
1 || C1  C2  C3 | val 
................................. 
2 || a  d  X2 | ? 
3 || c  f  X1 | ? 
4 || e  b  X3 | ? 

注意,在Sheet2中C列實際上已經等於在Sheet1用戶列名的值。

我只是想匹配A,B和C在Sheet1與A,B和Sheet2的1到找到最後一列值:

|| A  B  C  D 
================================= 
1 || C1  C2  C3 | val 
................................. 
2 || a  d  X2 | 11 
3 || c  f  X1 | 13 
4 || e  b  X3 | 18 

我一直在玩OFFSET)(和MATCH (),但似乎無法使用多個搜索條件鎖定一個單元格。有人可以幫忙嗎?

回答

0

我Sheet 2中D2字段使用此功能:

=指數(過濾器(Sheet 1中C:!E,工作表Sheet!A:A = A2,Sheet 1中B:!B = B2),如圖1所示,匹配( !C2,工作表Sheet $ C $ 1:$ E $ 1,0))

說明:

有過濾功能,這將導致在X1,X2,X3的值(C,d,Sheet 1中的列E到列)與這兩個條件匹配的行:

  1. C1是「a」
  2. C2是 「d」

因此,這將給予回覆的數組:[10,11,12] - 這是X1,X2,X3的(C,d,E)爲sheet1的列中的值在適當的行中。

然後,INDEX函數將抓住這個數組。現在我們只需要確定選擇哪個值。 MATCH函數將會執行這個計算,因爲它試圖在sheet1的標題行中找到第三個條件C3(在這種情況下爲「X2」),在這個例子中,當X2處於第二個位置時它將返回「2」 !工作表Sheet1 C1的:E1

所以索引功能將回饋這個數組的第二個元素:[10,11,12],這是11,所需的值

希望這有助於

相關問題