閱: 3513 | 回: 0
等級(jí):初學(xué)者
-
積分:0
-
財(cái)富值:0.00
-
身份:普通用戶
大家知道,Excel中的VLOOKUP函數(shù)可以在區(qū)域的第一列中查找指定的值,然后返回與該值同行的其他列的數(shù)據(jù)。但如果第一列中有多個(gè)相同值時(shí),VLOOKUP函數(shù)只能返回第一個(gè)。要返回第N個(gè)相同值所對應(yīng)的其他列數(shù)據(jù),可以用下面的公式,例如數(shù)據(jù)在A2:A25區(qū)域,共有24條記錄,其中與銷售人員“王冬”對應(yīng)的有多條記錄,要查找第二個(gè)“王冬”所對應(yīng)的銷售額。
在某個(gè)單元格中輸入數(shù)據(jù)公式:=INDEX(D2:D25,SMALL(IF(B2:B25="王冬",ROW(1:24)),2))
公式輸入完畢按Ctrl+Shift+Enter結(jié)束,下同。公式返回“555.28”。
如果要查找第一個(gè)“王冬”所對應(yīng)的銷售額,可以直接用VLOOKUP函數(shù)或類似上面的公式,如:
=VLOOKUP("王冬",B2:D25,3,0)
該公式輸入完畢直接按回車鍵,或數(shù)組公式:
=INDEX(D2:D25,MIN(IF(B2:B25="王冬",ROW(1:24))))
公式都返回“1981.55”。但后面的公式能夠向左邊查詢,這點(diǎn)VLOOKUP無法實(shí)現(xiàn)。如查找第一個(gè)“王冬”對應(yīng)的“銷售日期”:
=INDEX(A2:A25,MIN(IF(B2:B25="王冬",ROW(1:24))))
公式返回“2010-7-16”。
類似地,查找倒數(shù)第二個(gè)“王冬”的銷售額:
=INDEX(D2:D25,LARGE(IF(B2:B25="王冬",ROW(1:24)),2))
查找最后一個(gè)“王冬”的銷售額:
=INDEX(D2:D25,LARGE(IF(B2:B25="王冬",ROW(1:24)),1))
或用LOOKUP函數(shù),該公式輸入完畢直接回車即可,無需按輸入數(shù)組公式的組合鍵:
=LOOKUP(1,0/(B1:B25="王冬"),D1:D25)
兩個(gè)公式都返回“639.50”。最后一個(gè)公式中,由于LOOKUP函數(shù)要求第二個(gè)參數(shù)“l(fā)ookup_vector”必須以升序排列,公式的第二個(gè)參數(shù)為“0/(B1:B25="王冬")”產(chǎn)生一個(gè)僅包含“0”和錯(cuò)誤值的數(shù)組,因而能夠返回正確的結(jié)果。另外,由于其搜索的值為“1”,在“l(fā)ookup_vector”中找不到,會(huì)返回最后一個(gè)“0”對應(yīng)在“D1:D25”中的值。
我的個(gè)性簽名