教えて!ExcelVBA!

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

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

構文

構文は以下の通りです。

WorksheetFunction.Mod(数値1, 数値2)

解説

WorksheetFunctionは、ExcelVBAの組み込みオブジェクトで、Excelのワークシート関数をVBAから呼び出す際に使用します。Mod関数は、2つの数値を割り算したときの「余り」を返す関数です。数値1には割られる数(被除数)を入力し、数値2には割る数(除数)を入力します。例えば、5を2で割ると、余りは1になります。このように、割り算の結果の余りを求めたいときに使用します。Excelの数式でもMOD関数がありますが、VBA内ではWorksheetFunction.Modを使って同じ結果を得ることができます。

プログラミング例

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

Sub 余りを求める()
    Dim 割られる数 As Integer
    Dim 割る数 As Integer
    Dim 結果 As Integer
    ' 値の設定
    割られる数 = 10
    割る数 = 3
    ' Mod関数で余りを計算
    結果 = WorksheetFunction.Mod(割られる数, 割る数)
    ' 結果を表示
    MsgBox "割られる数: " & 割られる数 & vbCrLf & _
           "割る数: " & 割る数 & vbCrLf & _
           "余り: " & 結果
End Sub

上記のプログラムでは、まず「割られる数」を10、「割る数」を3として設定しています。そして、WorksheetFunction.Mod関数を使って10÷3の余りを求めています。計算の結果、余りは1になります。この結果をMsgBoxで表示しています。

まとめ

WorksheetFunction.Mod関数は、割り算の余りを求める際に使います。2つの数値を渡すことで、その結果の余りを簡単に計算できます。