IF関数で曜日を判定する方法|土日なら/特定の曜日/平日
ここでは、ExcelのIF関数で「曜日を判定する方法」を解説します。
特定の曜日によって結果を変えたい時の、数式の形、使い方の紹介です。
1.まずは「曜日判定」のポイントを確認
まず、IF関数で曜日を正しく判定させるためのポイントは、次の通りです。
- 曜日が表示されているセルの「実際の値」を把握
- 「実際の値に合わせた適切な条件値」にする
エクセルでは、「曜日の表示のさせ方」にいくつかの方法があり、中には「見た目と実際のセルの値が異なるケース」があります。
そこで、「曜日が表示されているセルが実際はどのような値になっているか?」をまず把握することが必要です。
すると、「実際の値に合わせた適切な条件値」を指定できるようになります。
ですからIF関数で曜日判定をするためには、「実際の値を把握」→「適切な条件値を指定」という流れが大事です。
2.「表示のさせ方」のパターンを知る
次に、Excelでの「曜日の表示のさせ方」のパターンを順に確認します。
2-1.曜日が「文字列」
まずは、シンプルに「曜日が文字列」のケースがあります。
例えば上のように、表示もセルの値も「月」といった状態のことです。
この場合には、「見た目」と「セルの値」が一致していますので、条件値も「曜日」を指定します。
2-2.曜日が「日付」
次に、「曜日が日付」の場合があります。
例えば上のように、「月」と表示されているのにセルの値は「2022/6/20」と日付となっているパターンです。
この場合には見た目と値が一致せず、条件値を「曜日」にするとIF関数の判定は「FALSE(偽)」になるため、ひと工夫が必要になります。
2-3.曜日が「数値」
続いて、「曜日が数値」の場合もあります。
WEEKDAY関数を使うと、「日曜日は1、月曜日は2…と、日付が数値」になります。そして、表示形式のユーザー定義を「aaa」にすることで、見た目を曜日にできます。
日付の入ったセル(例ではセルA1)があって、別に曜日を表示させるセル(例ではB1)にWEEKDAY関数を使うケースがよく見られます。
上の図は、「表示形式のユーザー定義を『標準』に戻した」ものです。
このように、WEEKDAY関数を使うとセルの値は「数値」になります。
そして、この場合も「曜日」を条件値にすると「FALSE」と判定されるため、やはりひと工夫必要になります。
2-4.表示方法のまとめ
このように、エクセルでは見た目が曜日でも「文字列の場合」と「日付の場合」、「数値の場合」の3パターンがあります。
そして、IF関数で曜日を判定する際には、「値に合う条件値にしないと正しく判定されない」ので、注意が必要です。
3.パターン別 数式の作り方
表示のさせ方が3つあることを踏まえて、表示のさせ方別の条件指定の方法を見てみましょう。
3-1.曜日が文字列の場合
曜日が文字列の場合には簡単で、「文字列の曜日を条件値にする」だけでOKです。
例として、IF関数で「セルA1の値が『月』ならば〇、そうでなければ×を表示させる」数式を作ってみます。
この時数式は、
=IF(A1="月","〇","×")
となります。
ポイントは、「条件値の曜日を『"』で囲む」です。
このケースは、問題ないと思います。
3-2.曜日が日付の場合
曜日が日付の場合には、「TEXT関数を使う」方法がよいです。TEXT関数は、「任意の文字列に変換」できる関数です。
数式の形は、次の通りです。
「判定対象」には、「曜日を判定したいセル番号」を入れます。また、「曜日」には「条件値にしたい曜日」を入れます。
なお、上の数式をコピーして使うと数式づくりが簡単です。
上の例のIF関数の数式は、
=IF(TEXT(A1,"aaa")="月","〇","×")
となっています。
3-3.曜日が数値の場合
曜日が数値の場合も日付の場合と同じで、「TEXT関数を使う」方法がわかりやすいです。
数式の形は同じで、次の通りです。
上の例のIF関数の数式は、
=IF(TEXT(B1,"aaa")="月","〇","×")
となっています。
値が日付の場合と全く一緒で、条件値は「文字列の曜日」でOKです。
なお、「数値を条件値にする方法」もありますが、「どの数値がどの曜日か?」を把握する必要があり、こんがらがりやすいので、おすすめしません。
以上、参考になれば幸いです。
【口コミ・評判のいいExcel本の紹介】
IF関数の、他の記事へのリンクはこちらです。
- IF関数その他の記事へのリンクはこちら
- ◎基本的な使い方
- ◎以上、以下等の比較演算子を使う方法
- ◎日付範囲や期間を簡単に指定する方法
- ◎日付を比較する時の数式の書き方
- ◎マイナスの場合は0、空白と指定する方法
- ◎空白セルを空白にする方法
- ◎#VALUE!等のエラーになる原因と対処法
- ◎結果がうまくいかない時の原因と対処法
- ◎パーセントを条件に指定する方法
- ◎複数条件のORをリストで指定する方法
- ◎曜日の条件指定がうまくいかない場合の対応方法
- ◎空白でもSUM関数でエラーにしない方法
- ◎値があれば、入っていたらの条件にする方法
- ◎範囲全てが条件値と一致するかを判定する方法
- ◎文字が入っていたらの条件にする方法
- ◎空白を判定する方法
- ◎別シートの値を参照する方法
- ◎複数条件を「かつ」で指定する方法
- ◎複数のうちのどれかに合えばとする方法
- ◎セルの値がいづれかの場合真とする方法
- ◎特定の文字列を含む条件を指定する方法
- ◎複数列全てが一致の条件にするテクニック
- ◎複数条件を指定して分岐させる方法
- ◎ROUND関数の正しい組み合せ方