Excel~日付に対応した曜日を表示:WEEKDAY関数

2021/7/22 随分古いExcelファイルなもので、自分でも記憶が定かではなくなっております。 完成形を公開しますので、ご自由にお使いくださいませ。

直接ダウンロード→予約状況管理表
とりあえず見てみる→GoogleDrive

日付に応じた曜日を表示する

前回までで表示したカレンダーの日付に応じた曜日を表示させてみます。

Excel~月の稼動日数を表示:COUNT関数 

比較的、基本なんでしょうけど知らない人も多くいらっしゃったので・・・

予約状況管理表曜日を表示1

実は曜日を表示するだけならこのWEEKDAY関数を使わずともできます。
が、今回は、後々、条件付書式を使って曜日を色分けする関係上、あえてWEEKDAY関数を使っています。

=WEEKDAY(K3)
=WEEKDAY(シリアル値,[種類])

WEEKDAY関数は「日付に対応する曜日を1~7までの整数で返します。シリアル値は日付を表す数値です」
※種類は省略可能

WEEKDAY関数の[種類]

種類 戻り値
1 または省略 1 (日曜) 〜 7 (土曜) の範囲の整数。以前のバージョンの Excel と結果は同じ。
2 1 (月曜) 〜 7 (日曜) の範囲の整数
3 0 (月曜) 〜 6 (日曜) の範囲の整数
11 1 (月曜) ~ 7 (日曜) の範囲の整数
12 1 (火曜) ~ 7 (月曜) の範囲の整数
13 1 (水曜) ~ 7 (火曜) の範囲の整数
14 1 (木曜) ~ 7 (水曜) の範囲の整数
15 1 (金曜) ~ 7 (木曜) の範囲の整数
16 1 (土曜) ~ 7 (金曜) の範囲の整数
17 1 (日曜) ~ 7 (土曜) の範囲の整数

ここでは、省略していますので日曜日(1)から始まります。

結果は”1”と返ってきました。

WEEKDAY関数で返ってきた答えを曜日になおす

このままでは、なんのことやらわからないので、この結果を曜日になおしましょうね。
予約状況管理表曜日を表示2

=TEXT(WEEKDAY(K3),”aaa”)
=TEXT(値,”表示形式”)

数値に指定した書式を設定し、文字列に変換した結果を返します。
表示形式には、セルの書式設定(Ctrl+1)の”表示形式タブ”でのユーザー定義で設定する書式と同じ書式記号をつかって設定します。”m/d/yyyy” や “#,##0.00” など。

ここでは、曜日を略して表す書式に設定するので「”aaa”」。
「”aaaa”」と指定すると「〇曜日」と返ってきます。

※曜日を色分けしないでいい場合は=TEXT(K3,”aaa”)でオッケーですよ。

曜日の表示形式

表示形式 表示
aaa 日、月、火、水、木、金、土
aaaa 月曜日、火曜日、水曜日、木曜日、金曜日、土曜日、日曜日
ddd Mon,Tue,Wed,Thu,Fri,Sat,Sun
dddd Monday,Tuesday,Wednesday,
Thursday,Friday,Saturday,Sunday

 

数式をコピーするとエラーに!?

表示できたら、数式を横にコピーします。

すると!!?
予約状況管理表曜日を表示4
31日まである月は大丈夫だけど、30日しかない月(小の月)は参照する値が空白なのでエラーになりました、、、

なので、おなじみIF関数を使います。
※エラー回避にはIFERRORやISERRORもありますが、ちゃんとエラーの内容を把握して回避したいのであえてIF関数を使います。

予約状況管理表曜日を表示6

 

予約状況管理表曜日を表示5

=IF(K3=””,””,TEXT(WEEKDAY(K3),”aaa”))
=もしK3が空白ならば、空白、そうでなければ計算結果「TEXT(WEEKDAY(K3),”aaa”)」を返す

つまり、28日までの2月は29、30、31が空白なので曜日も空白。
30日までの月は31のところは空白なので曜日も空白。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA