Excel 函數「vlookup」可不可以 lookup 到近似值?函數該怎麼寫?


vlookup公式最後一個參數Range Lookup,如果填寫0,則為FALSE,精確匹配,如果填寫非0數字或不填寫,則為TRUE,大致匹配。OFFICE上的最後這一段說明有問題,我們用事實證明了這一點。如果為FALSE,則為精確匹配。如果為TRUE或忽略,則為大致匹配。

驗證過程如下圖:

當有客戶買4個產品,當購買個數為4時,我們使用的是0,即為False,但是D15單元格顯示的單價卻顯示N/A,因為我們的引用數據並沒有4這個值,所以沒有引出數據。但是當我們把D15的公式改為參數為1,即為TRUE時,則引出了單價9.5,如下圖:

從而驗證了我上面的判斷。
為了再次證明評論中@Kuvick 的說法,我查看了英文版的EXCEL這一段的描述,如下圖:

描述如下文:
Range_lookup is a logical value: to find the closest match in the first column (sorted in ascending order) = TRUE or omitted; find an exact match = FALSE
英文版說明:
FALSE為精確匹配 TRUE或不填寫 則為大致匹配。
說明了Excel在漢化的時候出現了此錯誤。


VLOOKUP最後一個參數設為True就是可以用來模糊查找的。
一般用來查找這種等第的問題比較多。
比如我公式里為15.3,vlookup會找到最接近這個值的最小值,並返回該行指定數據。


首先要把查找範圍的第一列進行升序排列,然後:
1:使用lookup函數進行查找
2:使用vlookup函數查找,第四個參數填寫1(或者任意非0的數)
3:使用vlookup函數查找,省略第三個逗號以及第四個參數(如果這個逗號沒有省略,就變成了精確查找)


推薦閱讀:

execl多個條件查找 求助查詢公式?
如何在sum時視一些前面幾列帶過來的#N/A為0?
excel 方程的解釋?
excel 鍵盤操作技巧?
請教,在EXCEl中,如何利用VBA篩選求和?

TAG:高效工作 | MicrosoftExcel | 工作 | Excel公式 | Excel函數 |