MOD(モデュラス)関数の使い方
MOD(モデュラス)関数は、割り算の余りを算出してくれる関数です。
【構文】
=MOD(数値, 除数)
【使用例】
- =MOD(7, 3)
数値「7」を「3」で割ったときの余り、出力される数値は「1」となります。
[char no=”1″ char=”さえちゃん1”]この関数名は「MIN関数」を「ミン関数」と読まさずに「ミニマム関数」と読ませるのと一緒で、「モッド関数」とは読ませないようです。そのため「モデュラス」って読み方になります。「モド」・「モデュロ」、いろいろ読み方がありますが、コンピューターの処理に発音は不要なので、伝わりさえすれば関数名なんて何でもいいでしょう。[/char]
関数説明
MOD関数の説明は、QUOTIENT関数の続きという枠組みで説明します。
QUOTIENT関数は商を求める関数でした。MOD関数は余りを求めてくれます。単純な割り算で小数点を使わない計算のときに便利です。
算数の書き方をすると、次のようになります。
1574÷7=224…6
QUOTIENT関数は商の部分、224を出力しました。続いて、MOD関数で余りを求めてみましょう。
MOD関数は、[数式]タブ→関数ライブラリ[数学/三角]の中にあります。
引数には、数値と除数をセル参照で求めました。
キャンディーの余りは「6」となりました。
単純な割り算は割り切れない場合、小数点表示として一つのセルに計算を完結してしまいます。
QUOTIENT関数同様、物理的なものを計算するときにMOD関数でいくら余るのか? こちらを計算するときに便利です。
余りを出す、MOD関数の説明は以上となります。
さえちゃんのMOD関数ワンポイントアドバイス
[char no=”4″ char=”さえちゃん3”]余りってプログラミングの世界ではよく使われるんですよね。例えば、WEEKDAY関数なんかも、この余りを利用して曜日を識別しているんですよ。[/char]
説明の前にシリアル値についてすこし確認します。
1900年1月1日からオートフィルで日付を求めると、1900年2月29日が出現します。
実はこれ、現在の日付ルールであるグレゴリオ暦の場合は、100で割り切れる西暦は閏年ではないというルールがあるので、存在しない日付となっております。
そのため、WEEKDAY関数は1900年2月末までの出力値は、曜日がずれていることになります。第2引数を省略すると、日曜日はじまりとなりますからね。
本来であれば、1900年1月1日は月曜日なので「2」が出力されないといけません。けれども、あえてこのずれを解消すべく、1900年1月1日を「1」と出力しています。
1900年1月1日~2月28日まで曜日を1つずらすことで、1900年3月1日は無事に木曜日となり、ここから2100年2月28日まで、曜日がしっかり合うように設計されています。
話はMOD関数に戻り、WEEKDAY関数での出力値はMOD関数でも代用が可能です。1900年1月1日のシリアル値は「1」となるため、数式では
1÷7=0・・・1
となります。
あまりは「1」が出力され、WEEKDAY関数と同じ結果となるわけです。本来は月曜日であるけれども、シリアル値「1」を「7」で割っているので、WEEKDAY関数と同じ結果となりますよね。
オートフィルしてみましょう。
除数が7のため、余りのない7の倍数は0となりますが、7が0になっても異なる数字が吐き出されるので、条件分岐で曜日を出力することは可能です。
そのため、WEEKDAY関数はMOD関数でも代用することができます。
このように、余りはデータの識別をする目的で使われます。難しい話になると、チェックディジットにも余りが使われているんですよ。興味があったら調べてみてくださいね。
関数ステータス
関数ライブラリの種類
数学/三角
数式の構文
=MOD(数値, 除数)