スポンサー
日付に応じた曜日を表示する
前回までで表示したカレンダーの日付に応じた曜日を表示させてみます。
比較的、基本なんでしょうけど知らない人も多くいらっしゃったので・・・
実は曜日を表示するだけならこの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関数で返ってきた答えを曜日になおす
このままでは、なんのことやらわからないので、この結果を曜日になおしましょうね。
=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 |
数式をコピーするとエラーに!?
表示できたら、数式を横にコピーします。
すると!!?
31日まである月は大丈夫だけど、30日しかない月(小の月)は参照する値が空白なのでエラーになりました、、、
なので、おなじみIF関数を使います。
※エラー回避にはIFERRORやISERRORもありますが、ちゃんとエラーの内容を把握して回避したいのであえてIF関数を使います。
=IF(K3=””,””,TEXT(WEEKDAY(K3),”aaa”))
=もしK3が空白ならば、空白、そうでなければ計算結果「TEXT(WEEKDAY(K3),”aaa”)」を返す
つまり、28日までの2月は29、30、31が空白なので曜日も空白。
30日までの月は31のところは空白なので曜日も空白。
スポンサー
ニュースレターを購読する