構文
記述方法は以下の通りとなります。
Application.WorksheetFunction.Round([数値],[四捨五入する桁])
[説明]:
VBA中で四捨五入をする場合に使用します。
[数値] | 四捨五入する数値を記述します。 |
[四捨五入する桁] | 四捨五入する桁の位置を記述します。 記述する値は正/負のいずれかとなります。 ・正の値:小数点以下を四捨五入します。 ・負の値・小数点以上を四捨五入します。 |
[記述例]:
Application.WorksheetFunction.Round(123.45, 1)
Application.WorksheetFunction.Round(123.45, -1)
使い方
使い方について具体的に説明します。
四捨五入する桁の値が正の場合
四捨五入する桁の値が正の場合について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Application.WorksheetFunction.Round(123.45, 1)
End Sub
「数値:123.45について小数点第一位(四捨五入する桁の値:1)で四捨五入してMsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。小数点第一位が四捨五入され、MsgBoxで「123.5」が表示されます。
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
四捨五入する桁の値が正の場合についての説明は以上です。
四捨五入する桁の値が負の場合
四捨五入する桁の値が負の場合について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Application.WorksheetFunction.Round(123.45, -1)
End Sub
「数値:123.45について整数値第一位(四捨五入する桁の値:-1)で四捨五入してMsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。整数値第一位が四捨五入され、MsgBoxで「120」が表示されます。
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
四捨五入する桁の値が負の場合についての説明は以上です。
プログラミング(サンプル)
プログラミング事例を紹介します。
おわりに
今回はExcelVBAで四捨五入する方法について説明しました。VBA関数にはRound関数もありますが、Round関数は数値を整数に丸める関数(例として数値:24.5を数値:24に変換)であって、四捨五入する関数ではありません。注意して下さい。