• 作成日 : 2025年8月5日

MOD関数とは?使い方から応用例まで初心者向け解説

ExcelのMOD関数(モッド関数)は、割り算の「余り」を求める関数です。奇数・偶数の判定や交互の塗り分け、周期判定など、実務でも活躍します。この記事では、MOD関数の基本から応用例まで初心者にもわかりやすく解説します。

MOD関数とは?基本的な概念を理解しよう

エクセルで計算を行う際、足し算、引き算、掛け算、割り算を頻繁に利用します。しかし、割り算の結果として必要なのが「商」(割り算の答え)ではなく、「余り」である場合があります。MOD関数は、このような「余り」を計算するために特化したエクセル関数です。

「剰余」とは何か?

MOD関数が計算するのは「剰余(じょうよ)」と呼ばれるものです。剰余とは、簡単に言うと割り算の「余り」のことです。たとえば、「10を3で割る」という計算を考えましょう。

10÷3=3 余り 1

この場合の「余り」である「1」が剰余です。MOD関数は、この「1」という値を返す関数です。

なぜMOD関数が必要なのか?

通常の割り算演算子(/)を使って 10/3 と計算すると、結果は 3.333… という小数点を含む値になります。これでは「余り」だけを取り出すことができません。

MOD関数を使用すれば、=MOD(10,3) というシンプルな記述で、求めている「余り」である「1」を直接取得できるのです。データの周期性を調べたり、特定の条件に合致するデータを抽出・整形したりする際に、この「余り」の値が非常に重要になります。

MOD関数の基本的な使い方をマスターする

MOD関数の使い方は非常にシンプルです。関数の書式と、具体的な計算例を見ていきましょう。

書式と引数

MOD関数の書式は以下の通りです。

=MOD(数値, 除数)
  • 数値:割られる数を指定します。数値、セル参照、または数式で指定できます。
  • 除数:割る数を指定します。数値、セル参照、または数式で指定できます。

簡単な計算例

まずは、基本的な計算例から見ていきましょう。

例1:10を3で割った余り

セルに =MOD(10, 3) と入力すると、結果は 1 となります。

数値除数数式結果説明
103=MOD(10,3)110を3で割ると余りは1

例2:15を5で割った余り

セルに =MOD(15, 5) と入力すると、結果は 0となります。

数値除数数式結果説明
155=MOD(15,5)015は5で割り切れる

この例のように、MOD関数の結果が 0になる場合は、「数値」が「除数」で割り切れることを意味します。

負の数の計算例

MOD関数は、割られる数(数値)や割る数(除数)に負の数を指定することも可能ですが、その際の挙動には少し注意が必要です。エクセルのMOD関数は、結果の符号が「除数」の符号と同じになります。

例3:-10を3で割った余り

セルに =MOD(-10, 3) と入力すると、結果は 2となります。

数値除数数式結果説明
-103=MOD(-10,3)2除数(3)が正なので結果も正になる

数学的な剰余の定義によっては結果が異なる場合がありますが、エクセルのMOD関数はこのように動作します。

例4:10を-3で割った余り

セルに =MOD(10, -3) と入力すると、結果は -2 となります。

数値除数数式結果説明
10-3=MOD(10,-3)-2除数(-3)が負なので結果も負になる

このように、MOD関数で負の数を扱う場合は、「結果の符号が除数の符号と同じになる」という点を覚えておきましょう。

MOD関数が役立つ利用シーン

MOD関数は、単に余りを計算するだけでなく、さまざまな実用的な場面でその能力を発揮します。ここでは、代表的な利用シーンをいくつかご紹介します。

データの周期性を把握する

MOD関数は、一定間隔で繰り返すデータの中で「今どの位置にいるか」を判定するのに便利です。

たとえば、曜日(1=日曜〜7=土曜)のように7日周期でデータが回る場合、以下のように書けば対応する曜日を求められます。

=MOD(日数, 7)

余りが 0〜6 のいずれかとなり、それに対応する曜日をあらかじめ定義しておけば判定可能です。曜日以外にも、「3日おき」「5行おき」など、一定間隔の処理にも応用できます。

偶数・奇数を判定する

MOD関数は、ある数値が偶数か奇数かを判定する定番の方法としても使われます。以下のように記述します。

=MOD(数値, 2)

ある数値を2で割った余りは、必ず0か1になります。

  • 余りが0なら、その数値は 偶数
  • 余りが1なら、その数値は 奇数

つまり、MOD(数値,2) の結果を見ることで、簡単に偶数・奇数を判定できるのです。これは、後述するIF関数や条件付き書式と組み合わせることで、さらに強力な応用が可能になります。

一定間隔で処理や書式を適用する

たとえば「3行ごとに背景色を変えたい」「5行ごとに小計を入れたい」といったケースでは、MOD関数と ROW関数を組み合わせて以下のように使います。

=MOD(ROW(), 3)

上記のように、ROW関数を引数なしで使用すると、数式が入力されたセルの行番号を返します。そのため、この数式は各行に対して余りを返します。結果は 0・1・2 を周期的に繰り返すため、たとえば「余りが0のときに色を付ける」と設定すれば、3行おきの書式設定が可能です。定型処理を自動化する場面で非常に役立ちます。

MOD関数の応用テクニック

MOD関数は、他のエクセル関数や機能と組み合わせることで、さらに高度な処理が可能になります。ここでは、特によく使われる応用テクニックを2つご紹介します。

IF関数と組み合わせて条件分岐

MOD関数で得られた「余り」の値に応じて、表示する内容を変えたい場合は、IF関数と組み合わせます。IF関数は、「もし〇〇なら△△、そうでなければ××」という条件に基づいた処理を行う関数です。

例:偶数なら「偶数」、奇数なら「奇数」と表示する

A1セルに判定したい数値が入っているとして、B1セルに以下の数式を入力します。

=IF(MOD(A1, 2) = 0, “偶数”, “奇数”)

この数式は、「もしA1セルの値を2で割った余りが0ならば、『偶数』と表示しなさい。そうでなければ(余りが1ならば)、『奇数』と表示しなさい」という意味になります。これにより、数値の偶数・奇数に応じて自動的にテキストを切り替えられます。

条件付き書式での活用

MOD関数は、エクセルの「条件付き書式」機能と組み合わせることで、データの見た目を劇的に改善できます。特に便利なのが、「行を交互に塗り分ける」というテクニックです。これは、長いリスト形式のデータを見やすくするために非常に有効です。

例:行を交互に塗り分ける

  1. 塗り分けたい範囲を指定します。
  2. 「ホーム」タブの「条件付き書式」から、「条件付き書式ルールの管理」ダイアログ ボックスを呼び出します。
  3. 「新規ルール」をクリックし、「ルールの種類を選択してください」で「数式を使用して、書式設定するセルを決定」を選びます。
  4. 「次の数式を満たす場合に値を書式設定」のボックスに、以下の数式を入力します。
  5. =MOD(ROW(), 2) = 0 (偶数行に色を付けたい場合) または =MOD(ROW(), 2) = 1 (奇数行に色を付けたい場合) 「書式」ボタンをクリックし、塗り分けたい背景色などを設定します。
  6. 「OK」をクリックして設定を完了します。

これにより、指定した数式が真(TRUE)になる行、つまり偶数行または奇数行だけに設定した書式が適用され、行が交互に塗り分けられます。このテクニックは、MOD関数の周期性を視覚的に利用した素晴らしい例です。

MOD関数使用時の注意点

MOD関数を使う上で、いくつか注意しておきたい点があります。

割る数に0を指定した場合

MOD関数の「除数」に 0 を指定した場合、#DIV/0! というエラー値をエクセルは返します。これは、0で割るという計算が数学的に定義されていないためです。数式やセル参照で除数を指定している場合は、その値が0にならないように注意してください。

負の数の扱いの理解

「基本的な使い方」の「負の数の計算例」でも触れた通り、MOD関数では、結果の符号が「除数」の符号と同じになるというエクセルの仕様を理解しておくことが重要です。他のプログラミング言語や数学的な定義とは異なる場合があるため、特に負の数を扱う際は、意図した結果が得られるか確認するようにしましょう。


※ 掲載している情報は記事更新時点のものです。

※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。

関連記事