Excel使いこなしの基礎と応用

MOD関数の便利な使い方

使用関数:MOD、IF

MOD関数は割り算した「余り」の数値を返します。そんなの返されて何に使うの?と思うかもしれませんが、これが意外にもいろいろな場面で役立つのです。ポピュラーな使用法に、行番号や連番を利用して奇数行・偶数行を分別できるということがあります。これは条件付き書式に応用したり、IF関数の論理式に組み込んだりして使います。

目次


MOD関数の仕組み

MODは、モデュラス(Modulus)と読みます。
MOD関数の引数は「数値」と「除数」の2つ。「数値」は割られる方の数字、「除数」は割る方の数字です。ダイアログで「数値」を「8」、「除数」を「5」と指定すれば、剰余は「3」になります。
「数値」を「8」、「除数」を「5」と指定、剰余は「3」
割り算の答えではなく、割り切れずに余った数値を教えてくれる関数です。割り切れた場合は「0」を返すわけですね。この特性を活用して奇数行と偶数行を分けます。

スポンサーリンク

下図の「B2」セルを選択して、
「B2」セルを選択
「数式」タブ「関数ライブラリ」の「数学/三角▼」を押して下へスクロールし、「MOD」をクリック。
「数式」タブ「関数ライブラリ」の「数学/三角▼」からMODをクリック
関数の引数ダイアログで、引数の「数値」にA列にある連番をクリックして指定し、「除数」に「2」と入力します。割り切れないので、「1」がそのまま返ります。数式は「=MOD(A2,2)」。
「数値」にA列にある連番をクリックして指定し、「除数」に「2」と入力
「B2」セルを下までフィルコピーすると、「1」と「0」が交互に入りました。
下までフィルコピーすれば「1」と「0」が交互に表示される
「1」と入ったセルはA列の番号が奇数で「2」で割り切れずに「1」が余ったということ、「0」と入ったセルはA列の番号が偶数で「2」で割り切れたので「0」が返ったということです。
数式で奇数と偶数が分別できたところで、これを応用してみましょう。

IF関数にネストして名簿のグループ分け

前章の応用例として、名簿の1番上から順繰りに「Aグループ」「Bグループ」「Cグループ」と3分割していきたいと思います。右端にフィールドを設け、そこに所属グループを表示させます。
名簿を「Aグループ」「Bグループ」「Cグループ」と3分割
2分割のグループにするのであれば、前章で出した「=MOD(A2,2)」が使えますが、3分割するには「除数」を修正し、「=MOD(A2,2)」を「=MOD(A2,3)」に変える必要があります。

「1」を3で割って剰余として返るのが「1」、「2」を3で割って剰余として返るのが「2」、「3」を3で割って剰余として返るのが「0」。単純に「=MOD(A2,3)」の式を名簿の一番上から入れてフィルコピーすれば、「1」「2」「0」の順番が繰り返されます。
除数を3に変えると「1」「2」「0」が並ぶ
これをIF関数にネストしてグループ名を表示させればいいわけです。MOD(A2,3)をコピーしておきます。

スポンサーリンク

No.1の「グループ」フィールドのセルを選択して、IF関数の引数ダイアログを開きます。
No.1の「グループ」フィールドのセルを選択
引数「論理式」にコピーした数式をペーストし、続けて「=1」と入力します。「A2セルの番号を3で割った余りが1だったら」というIF文になりました。「真の場合」には、IF文を肯定する場合に表示させる文字列を「"Aグループ"」と入力します。
IF関数の引数ダイアログで「論理式」にMOD関数の数式、「真の場合」に文字列
偽の場合」にはもう一つIF関数をネストします。
論理式」には最初のIFと同じ数式をペーストして「=2」と入力。「真の場合」には「"Bグループ"」、「偽の場合」には「"Cグループ"」と入力。
ネストするIF関数のダイアログ
数式は「IF(MOD(A2,3)=2,"Bグループ","Cグループ")」。これが最初のIFの「偽の場合」に入ります。

最終的な数式は「=IF(MOD(A2,3)=1,"Aグループ",IF(MOD(A2,3)=2,"Bグループ","Cグループ"))」となります。「もし、A2セルの番号を3で割った余りが1だったらAグループと表示し、余りが2だったらBグループと表示、余りが1でも2でもなかったらCグループと表示する」

IF関数とネストの詳細は▶IF関数を入れ子して複数条件を指定|数式の組み立て方の手順とコツ

第1グループ、第2グループ、第3グループのように数字を使うなら・・・

グループ名を明確にする必要がなく、数字で表せばいいだけなら、IF関数に入れ子する手間は要りません。

数字を表示させたいセルを選択して、「=MOD(A2,3)」をコピペ。この数式を「=MOD(A2+2,3)+1」に修正します。No.の数値に2を足して、3で割った余りに1を足したということです。
「数値」に2を足して、3で割り、剰余に1を足す
第1、第2、第3と規則的に並びましたね。
第1、第2、第3グループが規則的に並んだ
番号を3で割ると、No.3では余りが「0」。これを「3」にするための策です。(※「第」と「3」と「グループ」はそれぞれ別セルです)
No.3を3で割り算した余りを3にする

MODは使い方が分かると、とても有用な関数です。


高機能の表計算ソフトExcelを活用すれば、仕事や私生活で、今あなたが必要とするいろいろなモノが作れます。その作成手順とデザイン、アイデアのヒントまでを可能な限り詳細にわかりやすくナビします。基本操作や関数、グラフに関する解説記事とともにご利用下さい。