Excel で入力した日付の曜日を自動で表示させる方法

技あり!PC活用術

Excel でセルに日付を入力すると曜日も表示されるようにできませんか?

セルの書式を「ユーザー定義」で「yyyy/m/d aaa」にすれば曜日を追加できるわ。

できました!でも、同じセルではなく、曜日だけ別のセルにしたいのです。

「TEXT関数」を使って、例えば「A1」セルに「2023/5/1」と入力して、隣のセル「B1」に「=TEXT(A1,"aaa")」と入力すると「B1」には「月」と表示されるはずよ。

曜日の表示は「月」ではなく「月曜日」にすることもできますか?

先ほどの関数で「"aaa"」の部分を「"aaaa"」にすると「月曜日」と表示されるわよ。

ビジネスで役立つ Office 活用術10選 資料ダウンロード

説明

Excel で選択したセルの書式を編集するには、「ホーム」タブのリボンで「数値」グループ右下にあるボタンから、「セルの書式設定」画面を開きます。


開いた「セルの書式設定」画面左の「分類」で「ユーザー定義」を選択。


右の「種類」入力ボックスで「yyyy/m/d aaa」と編集すると、「サンプル」で「日付」の後ろに「曜日」が追加表示されるのを確認できます。


この状態で「OK」ボタンをクリックするとセルの表示が確定します。


この場合は同じセルに日付と曜日が並びますが、曜日は日付と別のセルに表示したい場合は「TEXT関数」を使うと簡単です。
例えば「A1」というセルに「2023/5/1」と入力したとき、その隣のセル「B1」に
=TEXT(A1,”aaa”)
と入力すると「B1」には「月」と表示されます。


別の日付にすると当然、表示される曜日も変わり、その日付に対する曜日が実際のカレンダーで正しいことも確認できます。


ここで「=TEXT(A1,”aaa”)」の「”aaa”」部分で「表示形式」を設定しています。


この「表示形式」を変えることで、以下のように曜日の表記を変更することができます。
"aaa"  → "月"、"火"、"水"...
"aaaa"  → "月曜日"、"火曜日"、"水曜日"...
"(aaa)" → "(月)"、"(火)"、"(水)"...
"ddd"  → "Mon"、"Tue"、"Wed"...
"dddd"  → "Monday"、"Tuesday"、"Wednesday"...

これで入力した「日付」に対する「曜日」を希望の形式で自動表示できるようになります。


ちなみに Windows 用の Excel では「1900/1/1」を「1」、「1900/1/2」を「2」、「1900/1/3」を「3」... といった具合に 1900年1月1日以降、すべての日付に固有の整数が割り振られているため、この数値から曜日を割り出すことができます。
日付に割り振られた整数は「TEXT関数」で表示形式を「"0"」にすると表示できます。
=TEXT(A1,"0")
例えば「2000/1/1」は「36526」、「2023/5/1」は「45047」です。


この日付に対応した固有の整数を「7」で割った「余り」から曜日が分かります。
「余り」を計算する「MOD関数」を使って、例えば「45047」を「7」で割った余り、つまり「2023/5/1」は
MOD(45047,7) = 2
となって「余り」が「2」なので「月」となります。


ちなみに「余り」と「曜日」は以下のような関係になっています。


以上のことより「=TEXT(A1,"aaa")」は、「A1」に入力された「日付」に割り振られた整数を「7」で割った「余り」から「曜日」を割り出し、指定した「表示形式("aaa")」で「曜日」を表示させている、と理解しておけばいいでしょう。
せっかくなので自分の誕生日は何曜日か調べておくのも一興かもしれません。

執筆者: 林 俊二

メルマガ会員募集中

Qualit

お気軽にお問い合わせください

ページの先頭に戻る