塾長!いつも我がスーパーでお買い上げありがとうございます。最近は塾長の教えのおかげで日々の売上集計などにも積極的に関数を利用しております。
最近、新しい試みで「偶数日」と「5日ごと」にセールやポイント付与などをしています。その一覧を作りたいのですが、文字をコピーするとめんどうでセル位置を間違ってしまうこともあるのです。関数で簡単にセール日を表示することはできますでしょうか?
わしが、エクセル関数塾塾長!関 数之進(せきかずのしん)である!
おぉ、店長!いつもセール日を楽しみにしているぞ!?いやいや、いつも便利に買い物をさせてもらっておるぞ。
さて、表を見せてごらん?この一覧なら「MOD関数」を使って余りの数を求め、セール日を簡単に表示できるぞ。関数もだいぶ使えるようになってきたようなので、IF関数とMOD関数を組み合わせた技を極意書を使って説明しよう!
エクセルでは、MOD(モッド/モジュラス)関数を使って、「剰余(余り)」の数を求めることができます。
MOD関数の引数で数値と除数を指定して求めた「余り」の規則性を活かせば、IF関数などを組み合わせて特定の文字を表示できるなど、単純に「余り」の数だけ求める以外にも応用できます。
ここでは、MOD関数の基本的な書式と機能について紹介します。
MOD関数は次のように入力します。
=MOD(数値,除数)
MOD関数は、[関数の挿入]ボタンをクリックして関数の分類]で[数学/三角]を選択すると、関数が簡単に入力できます。 また、Excel2007と2010では関数ライブラリからも選択できます。
今回の例では、C列に偶数日セール、D列にポイント5倍の日を表示するようになっています。日付のみ入力された数値を2で割った余りの数が「0」の場合は「偶数日セール」、5で割った余りが「0」の場合は「ポイント5倍」と入力されるように、IF関数と共に次のように入力してみましょう。
エクセルでは、「2012/11/1」のような形で入力したセルの値は、実は表示とは違った「シリアル値」で管理されています。セルに記入した日付をMOD関数で利用する場合は次のような点に気をつけてください。
例えば、「2012/11/1」はシリアル値で「41214」です。そのセルを利用して「MOD関数」で偶数日を求めようとしてもシリアル値は「偶数」なので次のように表示されてしまいます。
2012/11/1 | 偶数日セール |
2012/11/2 | |
2012/11/3 | 偶数日セール |
そこで、日付を利用する場合は、あえてシリアル値にせずに「1」、「2」……などの単純な数値を入力してMOD関数で剰余を求めれば、式も結果もわかりやすくなります。
MOD関数は、剰余を求める関数です。そのまま利用すると用途が限られてしまいますが、規則的な日付や数値とIF関数などと共に利用すれば応用範囲が広がります。日付を利用する場合は、シリアル値よりも、単純な数値を引数にした方が式も結果もわかりやすくなるでしょう。
次のようなトレーニング日一覧を作成してみましょう。
次の表は、トレーニング日の一覧です。3日ごと、日曜日ごとのトレーニング日を表示させます。
問題に必要なエクセルのファイルをダウンロードしてください。
ダウンロードするには、下記のファイル名を右クリックして、メニューから「対象をファイルに保存」を選択してください。
本講座では、ファイルの保存先を《ドキュメント》としています。
ダウンロード方法がわからない場合は、下記ページをご参照ください。