在VBA中有這樣的怪問題:<br>a=0.0185<br>b=0.018501<br>得到Round(a,3)=0.018; Round(b,3)=0.019<br>不知這是什麼原因.請各位大大指點<br>謝謝!!<br>
用 Format 取代.... Format(0.0185, "0.###") = 0.019
Fix((1000 * CDec(0.0185)) + 0.5)/1000 Fix((1000 * CCur(0.0185)) + 0.5)/1000
先謝謝兩位大大! 只是這是否是最好的解決辦法呢? round()為什麼會是如此? 這也是困擾我的啊
在vb中 round()應該是四捨六入 若是五的話判斷下一位數的奇偶來決定定否進位 不知有沒有記錯
VB的四捨五入的整個系統都有這樣的問題 包含將浮點數指定給整數時所進行的四捨五入 及其它哩哩扣扣會遇到自動進行四捨五入的時候都會這樣 當然也包含了round()函數囉 之前我也是遇到四捨"六"入,稿的我一個頭兩個大 最後乾脆自己做一個round函數來用囉~
原來是這樣啊. 終於明白 謝謝各位大大的指點!!!