もどる

 四捨五入(関数:Round)
HOMEへ
PRODUCTSへ
LEARNING
LINKへ
LOGO
HeadLine
ORDER FORMへ
Image画像
MailTo:

もどる


(c) Copyright 2005 VBAを基礎から解説 VBA World All rights reserved.
E-Mail:info@vba-world.com
小数点以下の値が存在する数値を桁数を指定して四捨五入します。
桁数指定を省略すると、整数値を返します。
構文解説

Round(四捨五入する数値, 四捨五入する桁)


Option Explicit

Sub RoundTest()
 Dim dblNumber As Double
 Dim intPlace As Integer

 dblNumber = 123.456
 intPlace = 2

 MsgBox Round(dblNumber, intPlace)

End Sub

 

この例では、四捨五入する数値:123.456 を 小数点以下3桁目を四捨五入し、小数点以下2桁の値をメッセージボックスに表示。
別解1

Round関数を使用しなくても、小数点以下の四捨五入は実現可能。


Sub RoundByInt()
 Dim dblNumber As Double
 Dim intPlace As Integer

 dblNumber = 123.456
 intPlace = 2

 MsgBox (Int(dblNumber * 10 ^ intPlace + 0.5)) / 10 ^ intPlace

End Sub

 

ただし、実行速度は上記 RoundTestよりも遅くなる。
別解2

四捨五入の処理は VBAの Round関数だけでなく、Worksheet関数のRoundを使用することも出来る。

  こちらを参照 ⇒ Worksheet.Round関数

Worksheet関数のRoundの場合、小数点以下の四捨五入だけでなく、小数点以上の桁で四捨五入が可能なので、応用範囲は広い。

ただし、処理速度は VBAのRound関数の方が速い。