サイトについて      連絡先   検索

VBA Round 関数

はじめに

Excel VBA マクロの Round 関数を紹介します。

Round 関数は、小数点を偶数丸めした値を返します。

Excel の関数を使用すると四捨五入、切り捨て、切り上げができます。

  • 目次
    • 構文
    • 解説
    • 使用例

構文

Round(数値)
数値が整数になるように偶数丸めします。

Round(数値, 桁数)
指定した小数の桁数になるように偶数丸めします。

引数「数値」数値を指定します。
引数「桁数」省略できます。小数点以下の桁数を指定します。
戻り値の型引数「数値」と同じ数値型

解説

偶数丸めとは、丸める桁数の値が 5 のときに偶数になるように丸められることです。それ以外は四捨五入と同じです。

変換前 変換後
0.50
1.52
2.52
3.54

引数「桁数」を省略したときは、整数になるように丸められます。これは0を指定したときと同じです。

引数「桁数」に1を指定したときは、丸めた後 1 桁残ります。1.2341.2

Integer 型などの整数型に小数を含む数値を代入したときも自動で偶数丸めされています。

エクセルの関数を使う」方法で整数や小数の好きな桁を四捨五入、切り捨て、切り上げができます。

使用例


Dim f As Single

f = Round(1.234)
Debug.Print(f) ' 1

f = Round(1.5)
Debug.Print(f) ' 2

f = Round(2.4)
Debug.Print(f) ' 2

f = Round(2.5)
Debug.Print(f) ' 2

f = Round(2.6)
Debug.Print(f) ' 3

f = Round(1.234, 0) ' 2 を丸める
Debug.Print(f) ' 1

f = Round(1.234, 1) ' 3 を丸める
Debug.Print(f) ' 1.2

f = Round(1.234, 2) ' 4 を丸める
Debug.Print(f) ' 1.23

整数の桁を丸める。


Const num As Integer = 1555
Dim i As Integer

i = Round(num / 10) * 10
Debug.Print(i) ' 1560
  
i = Round(num / 100) * 100
Debug.Print(i) ' 1600
  
i = Round(num / 1000) * 1000
Debug.Print(i) ' 2000

Excel の関数で四捨五入、切り捨て、切り上げする。


Dim f As Single

' 四捨五入
f = WorksheetFunction.Round(12.34, 0)
Debug.Print(f) ' 12

f = WorksheetFunction.Round(12.34, 1)
Debug.Print(f) ' 12.3

f = WorksheetFunction.Round(12.34, -1)
Debug.Print(f) ' 10
  
' 切り捨て
f = WorksheetFunction.RoundDown(12.34, 0)
Debug.Print(f) ' 12

f = WorksheetFunction.RoundDown(12.34, 1)
Debug.Print(f) ' 12.3

f = WorksheetFunction.RoundDown(12.34, -1)
Debug.Print(f) ' 10

' 切り上げ
f = WorksheetFunction.RoundUp(12.34, 0)
Debug.Print(f) ' 13

f = WorksheetFunction.RoundUp(12.34, 1)
Debug.Print(f) ' 12.4

f = WorksheetFunction.RoundUp(12.34, -1)
Debug.Print(f) ' 20

整数型に小数を含む数値を代入すると自動で丸められます。


Dim i As Integer

i = 1.5
Debug.Print(i) ' 2
  
i = 2.5
Debug.Print(i) ' 2
  
i = 3.5
Debug.Print(i) ' 4
  • 目次
    • 構文
    • 解説
    • 使用例