Home » Excel(エクセル)の関数・数式の使い方 » 日付の処理・計算 » WEEKDAY関数の使い方を理解するなら

WEEKDAY関数の使い方を理解するなら

動作検証バージョン:Windows版Excel(バージョン1810 ビルド11001.20108)

「weekday関数の使い方」
という検索キーワードで、このサイト『インストラクターのネタ帳』へのアクセスがありました。

WEEKDAY関数の使い方を調べていた方による検索キーワードです。

[スポンサードリンク]

WEEKDAY関数単独の挙動を確認しよう

WEEKDAY関数は、曜日を表す1から7までの整数を返すだけの関数です。
▼操作概要:WEEKDAY関数の挙動を確認する
A列に連続する日付データを入力
 ↓
B1セルに
  =WEEKDAY(A1)
という数式を入力
 ↓
B1セルを下方向にオートフィル

例えばA1セルから下に、2018年11月1日からの日付データを入力して、上記の操作を行うと下図のような状態になります。

日付の曜日に該当する整数(1~7)を返すだけの関数ですから、WEEKDAY関数単独では、これだけしかできません。

上記のとおり第2引数を省略した場合には、日曜のときに1を、土曜日のときに7を返します。

第2引数を指定すれば、何曜日を1にするかを変更できますけれど、

まずは第2引数なしの状態で、日曜のときに1を、土曜日のときに7を返すことを理解するのがおすすめです。

WEEKDAY関数の使い方を理解するなら

WEEKDAY関数の使い方を解説しているWebページなどでは、このあと「日」や「日曜日」といった曜日を表示する方法をご紹介しているケースも、なぜかありますが、私はそんなことよりも、WEEKDAY関数で返された数値と1や7などとの比較演算を試してみるべきだと、強く思っています。
▼操作概要:日付が日曜日かどうかを判定する
A列に連続する日付データが入力されているときに
C1セルに
  =WEEKDAY(A1)=1
という数式を入力
 ↓
C1セルを下方向にオートフィル

上記の操作を行うと下図のような状態になります。

日曜日と同じ行にTRUE、他の曜日にはFALSEが表示されています。

これは、
  =1=1
という数式を入力すれば1と1は等しいのでTRUEが、
  =2=1
という数式を入力すれば2と1は等しくないのでFALSEが表示されるのと、まったく同じ理屈です。

C1セルに入力する式を
  =WEEKDAY(A1)=7
としてオートフィルした場合には、土曜日の行にTRUE、他の曜日にはFALSEが表示されるようになります。

これがExcelのWEEKDAY関数を使いこなすために理解すべき計算式です。
この論理値のTRUEまたはFALSEが表示される計算式を理解できない限りは、日曜日や土曜日のときに色を変える、といった条件付き書式の意味を理解できなくなります。

土日の色を変更する条件付き書式については、バージョン2003以前の方法しかご紹介していないので、UIの大きく異なる最近のバージョンでの設定手順は、近日中に別途ご紹介します日曜日を赤くする」という記事で公開しました(2018-11-22)。

WEEKDAY関数とIF関数を組み合わせてみる

上述の「=WEEKDAY(A1)=1」といった比較演算に慣れていない方は、IF関数と組み合わせてみましょう。
▼操作概要:日付が日曜日のときに〇を表示する
A列に連続する日付データが入力されているときに
D1セルに
  =IF(WEEKDAY(A1)=1, "〇", "")
という数式を入力
 ↓
D1セルを下方向にオートフィル

日曜日と同じ行にだけ〇が表示されるようになります。

IF関数に慣れているけれど、関数を使わない比較演算に慣れていない方の場合、こちらの
  =IF(WEEKDAY(A1)=1, "〇", "")
のほうが理解しやすいはずです。

このIF関数の第1引数に指定されている「WEEKDAY(A1)=1」が、先ほどC1セルに入力した数式と同じであることを意識しましょう。

最終更新日時:2018-11-22 13:31

[スポンサードリンク]

Home » Excel(エクセル)の関数・数式の使い方 » 日付の処理・計算 » WEEKDAY関数の使い方を理解するなら

「日付の処理・計算」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.