Excelで日付から自動的に曜日を入力する:Tech TIPS
Excelで日付から自動的に曜日を計算してセルに入力する方法を紹介する。別のセルに表示する方法と、日付を入力したセルに曜日を追加する方法があるので、目的に合わせて使い分けるとよい。また、連続した日付を簡単に入力する方法についても紹介しよう。
対象:Excel 2016/2019/2021/365
見積書や報告書などに日付を入力した際、曜日も入力したいこともあるだろう。そのような場合、いちいちカレンダーで曜日を確認して、セルに入力するのは面倒だ。入力した日付に合わせて、曜日が自動的に入力されると曜日の間違えも起きず便利である。
そこで、本Tech TIPSでは日付に合わせて曜日を自動入力させる方法を紹介する。
TEXT関数を使って日付から曜日を表示する方法
Excelで入力した日付から曜日を自動的に入力する際には、TEXT関数を使う。例えば、「A2」セルに日付を入力し、「B2」セルに曜日を表示したい場合、「B2」セルに以下のように入力するとよい。
=TEXT(A2,"aaaa")
これで自動的に「B2」セルに日付に対応する曜日が入力できる。
TEXT関数の「"aaaa"」の部分(表示形式コード)を下表のように変えれば、曜日の表示形式が変更できる。なお、オプションを「()」で囲うと「(月)」や「(Mon)」、「{}」で囲うと「{月}」、「{Mon}」といった形式でも表示可能だ。
表示形式コード | 曜日の表示形式 |
---|---|
aaa | 月、火、水、木、金、土、日 |
aaaa | 月曜日、火曜日、水曜日、木曜日、金曜日、土曜日、日曜日 |
ddd | Mon、Tue、Wed、Thu、Fri、Sat、Sun |
dddd | Monday、Tuesday、Wednesday、Thursday、Friday、Saturday、Sunday |
表示形式コードと曜日の表示形式の関係 |
セルの書式設定を使って1つのセルに日付と曜日を表示する方法
TEXT関数を使うと、曜日を別のセルに入力する必要がある。日付と同じセルに曜日も入力したい場合は、「セルの書式設定」を使う。
最初に日付を入力しよう。今日の日付ならば、セルを選択し、[Ctrl]+[;(セミコロン)]キーを押せば入力できる。
次に日付を入力したセルを選択し、[Ctrl]+[1]キーを押す(右クリックメニューから[セルの書式設定]を選択するか、[ホーム]タブの[数値]グループにある[数値の書式]の右脇の[▼]部分をクリックし、プルダウンリストの一番下にある[その他の表示形式]を選択してもよい)。
[セルの書式設定]ダイアログが開くので、[表示形式]タブの「分類」で「ユーザー定義」を選択し、「種類」で「yyyy/m/d aaa」や「yyyy/m/d(aaa)」(「aaa」の部分は上記の表示形式コードと同じ)と入力すればよい。
1つのセルに日付と曜日を表示する(1)
日付と同じセルに曜日を表示したい場合は、セルの書式設定を使う。[セルの書式設定]ダイアログが表示されたら、[表示形式]タブを開き、「分類」欄で[ユーザー定義]を選択し、「種類」を「yyyy"年"m"月"d"日" aaaa」に編集する(日付の表示形式は好みのものを選択してから「aaaa」などを追記するとよい)。
オートフィルや配列数式を使って曜日を自動入力する
日次の売上表や予定表など、連続した日付のある表に曜日を入力したいこともあるだろう。このような場合、1つ1つセルを選んでTEXT関数を入力したり、書式設定したりするのは面倒だ(日付の入力自体も面倒だろう)。
このような場合、オートフィルや配列数式、スピルを利用するとよい。
オートフィルを使う
先頭の日付を1つ入力し、そのセルを選択後、セルの右下にマウスポインターをホバー(重ねる)と、マウスポインターが+字に変わるはずだ。この状態で、自動入力させたい方向に自動入力したいセルの位置までマウスをドラッグすればよい。これで、続きの日付が自動入力できる。セルの書式設定なども同時にコピーされるので、わざわざ日付を手動で1つ1つ入力してから、TEXT関数で曜日を入力したり、セル書式を設定したりする必要はない。
オートフィルによるコピーは、TEXT関数とセルの書式設定の両方で利用可能だ。
オートフィルを使って曜日を自動入力する(1)
上述の方法で曜日を入力したら、オートフィルを使って他のセルにもコピーしよう。日付を入力したセルを選択し、マウスポインターをセルの右下に重ねて、ポインターが+字になったら、そのまま日付を入力したいセルまでドラッグする。
配列数式やスピルを使う
オートフィルで数式をコピーした後に曜日などの表示形式を変更する場合、先頭セルのTEXT関数の表示形式コードを直し、これを再びオートフィルでコピーする必要がある。
TEXT関数を使って、別の列に曜日を表示する場合、配列数式やスピル(Excel 2021/365のみ)を使えば、修正は先頭のセルのみで済む(配列数式についてはTech TIPS「Excelの配列数式で合計を一発で計算する方法」、スピルについてはTech TIPS「答え一発! 配列数式 Excelの「スピル」とは?」を参照のこと)。
最初に「日付」列に日付を入力しておき、次に「曜日」列のセルに以下の数式を入力し、[Ctrl]+[Shift]+[Enter]キーを押せばよい。これで配列数式として数式が確定し、「曜日」列のTEXT関数で指定したセル範囲に曜日が表示される(配列数式としてセルに数式が入力される)。
表示形式コードを変更したい場合、「曜日」列のセルを選択し、数式内の表示形式コードを変更し、[Ctrl]+[Shift]+[Enter]キーで数式を確定すればよい。これで、「曜日」列の全て数式の表示形式コードが変更できる。
配列数式を使って曜日を入力する(2)
TEXT関数が入力できたら、[Ctrl]+[Shift]+[Enter]キーで数式を確定する。間違って[Enter]キーを押してしまったら、TEXT関数を入力したセルを再選択してから[Ctrl]+[Shift]+[Enter]キーを押して、配列数式として確定すればよい。
配列数式を使って曜日を入力する(2)
配列数式の場合、1つのセルを修正して、これを[Ctrl]+[Shift]+[Enter]キーを押して確定すると、全ての配列数式が入力されたセルに対して反映が行われるので、修正が非常に楽である。Excel 2021/365の場合、スピルがサポートされているため、[Ctrl]+[Shift]+[Enter]キーで数式を確定しなくても、関数内でセル範囲が指定されていると配列数式として扱われる。
Excel 2021/365の場合、配列数式の新機能「スピル」がサポートされているため、[Ctrl]+[Shift]+[Enter]キーで数式を確定する必要はない。
配列数式やスピルは、数式のみに適用できる機能のため、セルの書式設定を使って同じセルに日付と曜日を表示したい場合には使えない点には注意してほしい。
特定の曜日に色を付ける
土曜日や日曜日を分かりやすくするように、文字色やセルの背景色を変更したい場合もあるだろう。このような場合、「条件付き書式」を利用し、特定の条件に合致した場合に設定される書式を適用するとよい。
具体的には、日付の入力されたセルを含む色を付けたいセル範囲を選択し、[ホーム]タブの[スタイル]グループにある[条件付き書式]をクリックし、メニューから[新しいルール]を選択する。
[新しい書式ルール]ダイアログが開くので、「ルールの種類を選択してください」欄で[数式を使用して、書式設定するセルを決定]を選択する。「ルールの内容を編集してください」欄の「次の数式を満たす場合に値を書式設定」の入力ボックスに以下の式を入力する。
=WEEKDAY(<日付の入った最初のセル>)=<曜日の数値>
WEEKDAY関数の<曜日の数値>は、下表の通りで、各曜日に「1」から「7」までの数値が割り当てられているので、色付けしたい曜日の数値を指定すればよい。例えば、日曜日ならば「1」を指定する。
曜日 | 日曜 | 月曜 | 火曜 | 水曜 | 木曜 | 金曜 | 土曜 |
---|---|---|---|---|---|---|---|
数値 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
WEEKDAY関数の曜日と数値の関係 |
式の入力が済んだら、プレビュー欄の右側にある[書式]ボタンをクリックして、上記の数式に合致した場合に反映したい書式を設定する。これで、指定した曜日に対して、設定した書式設定が反映されるため、フォントや背景に色を付けることができる。
特定の曜日に色を付ける(2)
[新しい書式ルール]ダイアログが開くので、「ルールの種類を選択してください」欄で[数式を使用して……]を選択する。「次の数式を……」の入力ボックスにWEEKDAY関数を入力してから、[書式]ボタンをクリックする。
日付を延長したい場合は、最後のセルを選択し、上述のオートフィルの要領でドラッグすれば、この条件付き書式で設定した内容を含んで自動入力が行われる。配列数式やスピルを使っている場合は、TEXT関数内で指定したセル範囲を広げればよい。
■合わせて読みたい記事
- Tech TIPS「Excelのセルの色を自動的に設定して予定表の土・日曜日を目立たせる」
- Tech TIPS「【Excel】書式設定を使って時刻を「午前/午後」表示にしたり、数値を漢数字で表示したりする」
- Tech TIPS「【Excel】「納期まであと何日?」日数、月数、営業日数などの期間を計算する」
更新履歴
【2023/10/23】配列数式やスピルを使って自動入力する方法を追記しました。
【2022/08/10】対象としてExcel 2021を加えました。
【2021/09/10】オートフィルを使う方法などを追記しました。
【2017/08/02】初版公開。
Copyright© Digital Advantage Corp. All Rights Reserved.