VBA Modを使う(割り算の余りを求める)

10進法で作業が進めにくい場合もあります。意外と使い道があるので覚えてください。

まず、Excelでは 

答え「1」のところの数式は、

=MOD(A2,B2)   <R1C1参照形式:=MOD(RC[-2],RC[-1]) >

割られる数 割る数 余り
10 3 1


 VBAでは下のように記述します。

Sub Macro931()

Cells(2, 3) = Cells(2, 1) Mod Cells(2, 2)

End Sub

 

A1参照形式で記述すると下のようになります。

Range("C2") = Range("A2") Mod Range("B2")

Excelの数式とちょっと違うので気をつけてください。

セルに計算式を入れるなら

Sub Macro932()

Cells(2, 3) = "=MOD(RC[-2],RC[-1])"

End Sub

 

高校数学では<定義:合同式

2つの整数a,bを自然数nで割った余りが等しいとき
a≡b(mod n) と表しaとbはnを法として合同であるという。

 

a≡b (mod n) , c≡d (mod n)
a+c≡b+d (mod n)
a-c≡b-d (mod n)
ac≡bd (mod n)
a^p≡b^p (mod n)


問題1

f:id:ava7545:20200929083701p:plain を7で割った余りを求めよ。


問題2

f:id:ava7545:20200929082926p:plainの下2桁を求めよ。(2018昭和大学 医)