教えて!ExcelVBA!

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

【ExcelVBA 演算子】割り算した結果の余りを求める(Mod)の使い方が知りたいです。教えて!

       f:id:m_kbou:20200417085528p:plain

割り算した結果の余りを算出する方法について説明します。

 

【目次】

 

構文

記述方法は、以下の通りとなります。

=======================================================================

[数値1]Mod[数値2]

=======================================================================

[説明]:

割り算した結果の余りをもとめるにはMod演算子を使用します。使い方は[数値1]Mod[数値2]と記述する事で、[数値1]を[数値2]で割り算して余りを算出してくれます。内容を纏めると、「[数値1]を[数値2]で割り算して余りを算出して下さい。」との意味になります。

[記述例]:

5 Mod 2

 

使い方

使い方について、具体的に説明していきます。

通常割り算による余りを算出する方法 

通常割り算による余りを算出する方法について説明します。

[記述例]:

※以下の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方については、VBEの開き方を参考にして下さい。

-------------------------------------------------

Sub サンプル()

    MsgBox 5 Mod 2
   
End Sub

-------------------------------------------------

内容は、「5/2の割り算による余りをMsgBoxで表示して下さい。」との意味になります。

[実行例]:

※5/2=2・・・1となる事から「1」が表示されます。

f:id:m_kbou:20200410143608p:plain

通常割り算による余りを算出する方法についての説明は以上です。

 

セルを指定した割り算による余りを算出する方法 

セルを指定した割り算による余りを算出する方法について説明します。

[記述例]:

※以下の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方については、VBEの開き方を参考にして下さい。

-------------------------------------------------

Sub サンプル()

    Range("C1") = Range("A1") Mod Range("B1")
   
End Sub

-------------------------------------------------

内容は、「A1セルをB1セルで割り算した余りをC1セルにセットして下さい。」との意味になります。

[実行例]:

(実行前) 

※A1セルには数値の4が入力されており、B1セルには数値の1が入力されています。

f:id:m_kbou:20200410143622p:plain

(実行後) 

※4/1=4・・・0となる事からC1セルには「0」が表示されます。

f:id:m_kbou:20200410145650p:plain

セルを指定した割り算による余りを算出する方法についての説明は以上です。

 

割り算による余りを算出し偶数・奇数を判定する方法 

割り算による余りを算出し偶数・奇数を判定する方法について説明します。

[記述例]:

※以下の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方については、VBEの開き方を参考にして下さい。

-------------------------------------------------

Sub サンプル()

    If (Range("A1") Mod 2 = 0) Then
        MsgBox "偶数です。"
    Else
        MsgBox "奇数です。"
    End If
   
End Sub

-------------------------------------------------

内容は、「A1セルを2で割り算した余りを算出し、余りが0の場合は”偶数です。”をMsgBoxで表示し、余りが0以外の場合は”奇数です。”をMsgBoxで表示して下さい。」との意味になります。

[実行例①]:

(実行前) 

※A1セルには数値の4が入力されています。

f:id:m_kbou:20200410151222p:plain

(実行後) 

※4/2=2・・・0となる事から”偶数です。”が表示されます。

f:id:m_kbou:20200410151235p:plain

[実行例②]:

(実行前) 

※A1セルには数値の11が入力されています。

f:id:m_kbou:20200410151319p:plain

(実行後) 

※11/2=5・・・1となる事から”奇数です。”が表示されます。

f:id:m_kbou:20200410151331p:plain

割り算による余りを算出し偶数・奇数を判定する方法についての説明は以上です。

 

おわりに

今回は割り算した結果の余りを求めるMod演算子の使い方について説明しました。特に上記で説明した偶数/奇数の判断処理は多々使用するケースがありますので、是非覚えておいて下さい。