匿名使用者
匿名使用者 發問時間: 電腦與網際網路軟體 · 1 0 年前

Execl VBA 為什麼不會四捨”五入”呢

我在Exel 2003 VBA下了round(yy,0)

結果神寄的地方出現了:

若yy = 3.4 則 round(yy,0) = 3 --------------> 正確

若yy = 3.5 則 round(yy,0) = 3 --------------> 錯誤

若yy = 3.6 則 round(yy,0) = 3 --------------> 錯誤

有誰能告訴我Microsoft有沒有修正這個錯誤

已更新項目:

若是有錯誤修正,那裡可以下載得到~

2 個已更新項目:

我把計算時的結果是OK的,但放入到欄位中是錯誤的,

更正

3.4是正確

3.5是錯誤

3.6是正確

3 個已更新項目:

原來是要加上Application.

感謝夏日大大的協助

4 個已更新項目:

請夏日大大把您的意見放到回答中,好讓本人贈點給您!

1 個解答

評分
  • 夏日
    Lv 5
    1 0 年前
    最佳解答

    Sub Test()

    [a1] = Round(2.5)

    [a2] = Round(3.5)

    [a3] = Application.Round(2.5, 0)

    [a4] = Application.Round(3.5, 0)

    End Sub

    VBA裡的Round函數規則是"四捨六入五成雙"。

    2009-08-19 22:39:35 補充:

    Sub Test()

    [a1] = Round(2.5)

    [a2] = Round(3.5)

    [a3] = Application.Round(2.5, 0)

    [a4] = Application.Round(3.5, 0)

    End Sub

    VBA裡的Round函數規則是"四捨六入五成雙"。

還有問題?馬上發問,尋求解答。