教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

ExcelVBAのWorksheetFunctionオブジェクトで使用するRoundDown関数の使い方

構文

構文は以下の通りです。

WorksheetFunction.RoundDown(数値, 桁数)

解説

WorksheetFunctionは、ExcelVBAの組み込みオブジェクトで、Excelのワークシート関数をVBAから呼び出す際に使用します。RoundDown関数は、指定した桁数以下の小数を切り捨てる機能です。この関数は四捨五入を行わず、常に指定された桁数までの部分だけを残して小数点以下を切り捨てます。数値は、四捨五入せずに切り捨てを行いたい数値を指定します。桁数は、小数点以下何桁目まで残すかを指定します。0を指定すると整数部分まで切り捨てられます。

プログラミング例

具体的なプログラミング例を紹介します。

Sub 切り捨て例()
    Dim 数値 As Double
    Dim 結果 As Double
    数値 = 123.45678
    ' 小数点以下2桁まで切り捨て
    結果 = WorksheetFunction.RoundDown(数値, 2)
    MsgBox "小数点以下2桁までの切り捨て結果: " & 結果
    ' 小数点以下0桁 (整数) まで切り捨て
    結果 = WorksheetFunction.RoundDown(数値, 0)
    MsgBox "整数までの切り捨て結果: " & 結果
End Sub

上記のプログラムは、最初のRoundDown(数値, 2)で123.45678の小数点以下2桁目まで残し、それ以降を切り捨てます。結果は123.45になります。次のRoundDown(数値, 0)は、小数点以下をすべて切り捨て、結果を123として表示します。

まとめ

RoundDown関数は、小数点以下の指定した桁数を残し、それ以降を切り捨てる便利な関数です。これを使うと、計算結果が意図せずに四捨五入されることを防ぎ、常に切り捨てられた正確な数値が得られます。