VBA 中的四捨五入
Iqra Hasnain
2022年7月12日
我們將通過示例來介紹 VBA 中的 Round()
和 RoundUp()
函式。
在 VBA 中使用 Round()
或 RoundUp()
函式
在使用包含數字和計算的 Excel 工作表時,我們會得到分數的結果。有時我們必須將這些十進位制數轉換為整數。
VBA 提供了三種不同的函式,可用於將十進位制數轉換為整數。我們將在本文中討論兩個函式。
Round()
將十進位制數四捨五入到最接近的整數。例如,我們將儲存一個十進位制數,然後使用 Round()
函式。
示例程式碼:
# VBA
Sub roundFunc()
Dim num As Double
num = 5.79
MsgBox Round(num)
End Sub
輸出:
我們甚至可以提到小數位數,直到我們想要四捨五入。讓我們嘗試將相同的數字四捨五入到小數點後一位。
示例程式碼:
# VBA
Sub roundFunc()
Dim num As Double
num = 5.79
MsgBox Round(num, 1)
End Sub
輸出:
從上面的結果,我們可以很容易地將小數點四捨五入到小數點後一位。我們還可以使用此函式對 Excel 工作表中單元格的值進行四捨五入。
讓我們嘗試使用 range 方法對 Excel 工作表中的數字進行四捨五入。
示例程式碼:
# VBA
Sub roundFunc()
Range("A1").Value = Round(Range("A1").Value, 1)
End Sub
輸出:
讓我們討論另一個函式,即使數字接近較小的整數,它也可以將十進位制數四捨五入。可能在很多情況下,我們必須始終將十進位制數四捨五入為大於十進位制數的整數。
語法:
# VBA
Application.WorksheetFunction.RoundUp(num, 1)
讓我們舉個例子並嘗試使用 RoundUp()
函式。
示例程式碼:
# VBA
Sub roundFunc()
Dim num As Double
num = 5.468
MsgBox Application.WorksheetFunction.RoundUp(num, 1)
End Sub
輸出:
這樣,我們可以使用 RoundUp()
函式將數字四捨五入到可能的最大整數。