如何使用LOOKUP函數(shù)實(shí)現(xiàn)無序查詢?
LOOKUP函數(shù)有一個(gè)經(jīng)典的條件查找解法,通用公式基本可以寫為:
LOOKUP(2,1/(條件),查找數(shù)組或區(qū)域)
或
LOOKUP(1,0/(條件),查找數(shù)組或區(qū)域)
很多初學(xué)者對此感覺非常詫異就,主要疑惑有:
1、公式中的2、1、0等數(shù)字有什么含義,明明在查找條件與這3個(gè)數(shù)字根本毫無聯(lián)系,怎么能得到正確結(jié)果?
2、明明LOOKUP函數(shù)說明需要“升序”查找,否則可能無法返回正確的值,上面這種解法又是如何得改變這一說法呢?
3、據(jù)說LOOKUP函數(shù)的查找順序是“二分法”,并且有流程圖可循,是否可以結(jié)合此例進(jìn)行講解?
【函數(shù)幫助信息摘錄】
語法:LOOKUP(lookup_value, lookup_vector, result_vector)
1、[要點(diǎn)] lookup_vector 中的值必須以升序排列:...,-2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE。否則,LOOKUP 可能無法返回正確的值。大寫文本和小寫文本是等同的。
2、如果 LOOKUP 函數(shù)找不到 lookup_value,則它與 lookup_vector 中小于或等于 lookup_value 的最大值匹配。
3、如果 lookup_value 小于 lookup_vector 中的最小值,則 LOOKUP 會(huì)返回 #N/A 錯(cuò)誤值。
【釋疑】簡要地說,從邏輯推理來看:
1、首先,條件是一組邏輯判斷的值或邏輯運(yùn)算得到的由TRUE和FALSE組成或者0與非0組成的數(shù)組,因而:1/(條件)的作用是用于構(gòu)建一個(gè)由1或者#DIV!0錯(cuò)誤組成的值。
2、根據(jù)LOOKUP函數(shù)說明中的這一條:
如果 LOOKUP 函數(shù)找不到 lookup_value (即:2),則它與 lookup_vector 中小于或等于 lookup_value 的最大值(即:1)匹配。
也就是說,要在一個(gè)由1和#DIV!0組成的數(shù)組中查找2,肯定找不到2,因而將返回小于或等于2的最大值(也就是1)匹配。
為什么要用2來查找1或用1來查找0呢?因?yàn)槿绻卸鄠€(gè)與第1參數(shù)相等的值,則Lookup就不一定返回“最后一個(gè)”所對應(yīng)的記錄,所以必須養(yǎng)成一個(gè)良好習(xí)慣,
而不要用:LOOKUP(1,1/(條件),……,或LOOKUP(,0/(條件),……
3、如果有多個(gè)滿足條件的紀(jì)錄,為何只返回最后一個(gè),而不是第一個(gè)或其他呢?這個(gè)解釋就需要二分法流程圖的模擬了。而對于一般使用者來說,只需要記住“查找滿足條件的最后一個(gè)記錄”可以使用通用公式
LOOKUP(2,1/(條件),查找數(shù)組或區(qū)域)
或
LOOKUP(1,0/(條件),查找數(shù)組或區(qū)域)
繼續(xù)查找其他問題的答案?
-
Excel 2019如何使用復(fù)制、粘貼命令插入Word數(shù)據(jù)?(視頻講解)
2021-01-257次播放
-
Excel 2019如何制作數(shù)據(jù)透視表?(視頻講解)
2021-01-2227次播放
-
Excel 2019如何設(shè)置相對引用?(視頻講解)
2021-01-2210次播放
-
2021-01-2212次播放
-
Excel 2019如何使用命令復(fù)制公式?(視頻講解)
2021-01-226次播放
-
2021-01-223次播放
-
2021-01-222次播放
-
Excel 2019如何利用開始選項(xiàng)卡進(jìn)入篩選模式?(視頻講解)
2021-01-223次播放
-
Excel 2019如何設(shè)置指定數(shù)據(jù)的篩選?(視頻講解)
2021-01-223次播放
-
Excel 2019如何設(shè)置自定義排序?(視頻講解)
2021-01-222次播放
點(diǎn)擊加載更多評論>>