請幫我抓excel Vlookup的Bug

2010-05-19 9:38 pm
=Vlookup(A1-0.1,C1:F1,2,0) -->請貼在B1
4.1 -->請貼在A1
4 A B C -->請分別貼到C1~F1
結果應該是A,為什麼結果是#N/A ?

回答 (1)

2010-05-19 11:02 pm
✔ 最佳答案
=VLOOKUP(ROUND(A1-0.1,15),C1:F1,2,)

這是Excel的進位誤差,亦即其運算時是將每一個數字轉換為二進位,再進行運算,故若遇到可被五整除的數(即其二進位表達為無限位數),則將可能出現誤差

2010-05-19 15:03:22 補充:
可參考

http://support.microsoft.com/kb/214118/zh-tw

2010-05-24 09:39:45 補充:
就是指在Excel中,4.1-0.1之值係4.1換成二進位的數再減去0.1換成二進位的數,其值不一定等於4


收錄日期: 2021-04-15 19:53:57
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20100519000016KK03053

檢視 Wayback Machine 備份