2014-10-31 100 views
0

我在電子表格中的每一行使用VLOOKUP列。 對於每一行,如果滿足兩個條件,我需要從另一個工作表中返回一個值: 1)同一行的A列中的值=參考範圍中的值 2)列O中值的範圍= 「AH」Excel 2013 - 具有多個條件的VLOOKUP

所以下面的工作可以返回上面我的第一條標準的值,但我不想返回值,除非匹配行的O:O中的值是「AH」。我搜索了幾個網站和教程,但似乎沒有參考我正在嘗試做的事情。他們要麼計算或總結價值,我不想做任何奇特的計算。我只是想返回值,如果他們是「AH」的匹配記錄在另一個表中。

= VLOOKUP($ A2,Cohort_Major_IDST $ A:$ AF,15,FALSE)

很多感謝,

林賽羅

回答

0

這是一個棘手的和有幾種方法解決它。

第一種方法是在要查找的工作表中創建一個「鍵」,將A中的值與O中的值連接到該範圍前面的新列(插入A列)然後查找類似=Vlookup($A2 & "AH", Cohort_Major_IDST!$A:$AG, 6, FALSE)

第二是讓偷偷摸摸與SUMPRODUCT返回,其中兩個條件中的行,INDEX來獲取值:

=INDEX(Cohort_Major_IDST!$AH, 0, SUMPRODUCT(($A2=Cohort_Major_IDST!A:A)*(Cohort_Major_IDST!O:O="AH")*ROW(Cohort_Major_IDST!A:A))) 

SUMPRODUCT這裏着眼於多重標準類似的r時代(這裏的相似範圍是列A和O)。如果標準符合一行,則它從ROW(Cohort_Major_IDST!A:A)中獲取值。

第二種方法更好,因爲它不涉及在您的範圍中插入多餘的列,因此您可以不改變原始數據。儘管它看起來並不那麼友好,但如果數據中的多個標準有多個匹配項,它也會失敗。它將添加所有ROW()返回的結果...所以請確保您的查找是唯一的。

+0

非常感謝你JN!出於某種原因,我無法使用您的sumproduct解決方案工作。但是我能夠使用下列方法使它工作: – user3795203 2014-10-31 18:39:19

+0

= INDEX(Cohort_Major_IDST!O:O,MATCH(1,IF(Cohort_Major_IDST!A:A = [@ [id_num]],IF(Cohort_Major_IDST!O:O = 「AH」,1)),0))唯一的問題是它似乎真的使系統執行這個計算。 – user3795203 2014-10-31 18:40:00