Excel関数 逆引き集 | 剰余 → MOD

Excel
スポンサーリンク

概要

「3で割った余りを知りたい」「偶数か奇数かを判定したい」「5日ごと・10個ごとに区切りたい」
そんな“割り算の余り”を扱うときに使うのが MOD 関数(剰余) です。

MOD は、
「ある数を別の数で割ったときの“余り”」を返す関数です。
算数で習った「割り算の余り」を、そのまま Excel で扱えるイメージです。


MOD 関数の基本

書式と意味

=MOD(数値, 除数)

数値:割られる数(元の値、セル参照、計算式など)
除数:割る数(0 以外の数)

たとえば、次のように動きます。

=MOD(10,3)   ' 10÷3 の余り → 1
=MOD(15,4)   ' 15÷4 の余り → 3
=MOD(A2,2)   ' A2 を 2 で割った余り

「数値 ÷ 除数」をしたときの余りだけを取り出す、というイメージです。


よくある使い方

偶数・奇数の判定

数を 2 で割った余りが 0 なら偶数、1 なら奇数です。
これをそのまま MOD で書けます。

偶数かどうかを判定する式の例:

=MOD(A2,2)=0

この式は、A2 が偶数なら TRUE、奇数なら FALSE になります。

文字で表示したいなら IF と組み合わせます。

=IF(MOD(A2,2)=0,"偶数","奇数")

A2 が 4 なら「偶数」、5 なら「奇数」と表示されます。

「n個ごと」「n日ごと」の区切りを作る

たとえば、「5行ごとに区切りを入れたい」「10個ごとにフラグを立てたい」といったとき、
行番号や連番に MOD をかけると便利です。

行番号 ROW() を使って「5行ごと」の判定をする例:

=MOD(ROW(),5)=0

5行目、10行目、15行目…のときだけ TRUE になります。

連番が A2 から始まっているとして、「10個ごと」の判定をする例:

=MOD(A2,10)=0

10、20、30…のときだけ TRUE になります。

週のサイクル・ローテーション

「7日ごと」「3日ごと」「4人で順番に担当」など、
一定周期でローテーションさせたいときにも MOD はよく使われます。

たとえば、「4人で順番に担当番号 1〜4 を振りたい」とき、
連番が A2 に入っているなら:

=MOD(A2-1,4)+1

A2 が 1,2,3,4,5,6,7,8,… と増えていくと、
結果は 1,2,3,4,1,2,3,4,… と繰り返されます。


負の数と MOD

基本的には「正の数」で使うことが多いですが、
MOD は負の数にも使えます。

=MOD(-3,2)

のような式も書けますが、負の数の扱いは少し直感的でないこともあるので、
まずは「正の数で余りを扱う」場面から慣れていくのがおすすめです。


テンプレート集

2 で割った余り(偶奇判定の基本):

=MOD(A2,2)

偶数なら TRUE、奇数なら FALSE:

=MOD(A2,2)=0

偶数/奇数を文字で表示:

=IF(MOD(A2,2)=0,"偶数","奇数")

n 個ごとの区切り(n で割り切れるか):

=MOD(A2,n)=0

4人ローテーションで 1〜4 を繰り返す:

=MOD(A2-1,4)+1

例題

問題1

A2 に「10」が入っています。
この値を 3 で割った余りを求める式を書いてください。

=MOD(A2,3)

問題2

A2 に「15」が入っています。
この値を 4 で割った余りを求める式を書いてください。

=MOD(A2,4)

問題3

A2 に「任意の整数」が入っています。
この値が偶数なら「偶数」、奇数なら「奇数」と表示する式を書いてください。

=IF(MOD(A2,2)=0,"偶数","奇数")

問題4

A2 に 1 から始まる連番が入っています。
この連番に対して、「10個ごと(10,20,30,…)のときだけ TRUE になる」式を書いてください。

=MOD(A2,10)=0

問題5

A2 に 1 から始まる連番が入っています。
4人で順番に担当し、「担当番号 1〜4 を繰り返す」番号を求める式を書いてください。

=MOD(A2-1,4)+1

MOD は、「割り算の余り」をそのまま Excel で扱える、とても“算数らしい”関数です。
偶奇判定、周期処理、ローテーション、n個ごとの区切り――
「割ったときの余り」という発想が出てきたら、まず MOD を思い出してみてください。

Excel
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました