今回は、Excelのセルに曜日を自動的に表示させる方法を紹介したいと思います。
カレンダーや出勤表、いろんな資料で曜日が必要になることも多いですが、手動で入力するのは手間です。
さまざまな場面に合わせて、使い分けてみてください。
今回紹介するのは、以下の3つ+1の方法です。
方法1:日付と曜日を1つのセルにだけ入力し、ドラッグ
こんなときに使おう
連続した複数の日付を表示させたいとき(カレンダー、出勤表など)
方法2:日付の書式で曜日を表示させる
こんなときに使おう
・ある特定の日付だけの曜日を表示させたいとき(連絡事項、契約書など)
・連続していない複数の日付を表示させたいとき(日程表など)
方法3:日付をテキスト形式の曜日に変換する
こんなときに使おう
連続していない複数の日付を表示させたいとき(日程表など)
応用編:Weekday関数
Contents
方法1:日付と曜日を1つのセルにだけ入力し、ドラッグ
1つ目の方法は超簡単です。例として、以下のようなシフト表を作成します。
まず、画像のように日付と曜日を1日だけ入力します。
次に、この日付と曜日のセルを選択した状態で、セルの右下にマウスのカーソルを合わせます。
マウスのカーソルが、「+」のように黒く細い十字に変わったら、下方向にドラッグします。
すると、このようにドラッグした分だけ日付と曜日が自動で表示されます。
あとは、同じように必要な分だけドラッグします。
完成です。超簡単ですね。
方法2:日付の書式で曜日を表示させる
方法1では、日付と曜日を違うセルで表しました。
この方法では、「2020/1/1(水)」のように、1つのセルに日付と曜日の両方を含めます。
まずは、日付が入力されているセルを選択します。
次に、画面上の「リボン」から、「ホーム」→「日付」→「その他の表示形式」を選択します。
もしくは、セルの上で右クリックして、「セルの書式設定」でもOKです。どちらの場合でも、以下のような画面が表示されます。
次に、「分類」の中にある「ユーザー定義」を選択します。
補足:日付の表示形式
※「曜日の表示」には関係ない箇所なので、以下の内容を知っている方はこの枠内の内容を飛ばしてOKです。
曜日を表示させる前に、この中から、「自分の好きな日付の表示形式」を選択します。
この画像の例では、「yyyy/m/d」と表示されています。これは「2020/1/1」という日付の形式を表しています。
Y:年
M:月
D:日
それぞれのアルファベットの数で、数字の桁数を表しています。
例えば、yyyy/mm/ddにすると、以下のように、数字が足りない場合は先頭に自動的に0がつきます。
2020年1月15日→2020/01/15
2020年5月5日 →2020/05/05
逆に、「20年2月8日」のように、2020年の千の位、百の位を省略することもできます。
yy/m/d ですね。
スラッシュを「年、月、日」に変えても同様です。
※「年、月、日」は、画像の例のようにダブルクォーテーションで囲む必要があります。
※年を元号で表すことも可能です。「種類」のプルダウンの中にあるので、探してみてください。
日付の表示形式を選択したら、「種類(T):」の下の枠にカーソルを合わせます。
「d」の後ろに、「aaa」と記載します。
すると、「サンプル」のように、後ろに曜日が追加されています。
OKを押すと、セルの表示内容が変わっています。
なお、表示内容はセル1つずつだけではなく、複数まとめて変えることが可能です。
このように、表示内容を変えたいセルをすべて選択します。
先ほどと同じ方法で設定すると…
全部変わっています。
曜日の表示形式
なお、ユーザー設定で、曜日の表示形式をいろいろ変えることができます。
dとaaaの間に半角スペースを入れれば、スペースができます。
aaaを括弧でくくれば、曜日も括弧でくくれます。
aaa(a3個)ではなく、aaaa(a4個)にすれば、「○曜日」という表示になります。
aaaではなく、dddにすると、曜日が英語表記になります。
ddddにすると、略称でない英語表記になります。
方法3:日付をテキスト形式の曜日に変換する
この方法は、「ある特定の曜日の場合、どうする」のような、曜日ごとに条件を設定したい場合に便利です。
例えば、以下のような予定表を作りたい場合です。
日付を曜日に変換するには、Text関数を使います。
関数は以下のように書きます。
=TEXT(変換したい日付,”aaa”)
今回の場合は、変換したい日付は隣のセル(上の画像の例では、A2セル)にあります。
ただしこれだけでは、先ほどの「方法2」でセルを変換した方が速いです。
では、このTEXT関数はなんのために使うかというと、
「ほかの関数と組み合わせたい」ときに使用します。
特に、IF関数のような、「曜日を条件にして表示内容を変える」ときに役立ちます。
例えば、場所を「金曜日ならば場所はアネックス、それ以外ならば本社」としたい場合、曜日をテキストにしていればIF文でこのように表すことができます。
※日付の形式を曜日付きに変換しただけでは、このIF文は使えません。なぜなら、この日付は、見た目を変えただけで実際のデータは変わっておらず、「日付の情報しかない」からです。
そのため、「曜日を条件に何かしたい」場合は、「曜日の情報をテキストで持っている」ことが必要になります。
なお、関数の「=TEXT(変換したい日付,”aaa”)」のaaaの部分を、書式と同様に変換すると、セルの見た目も変わります。
例:dddにした場合
応用編:Weekday関数
最後に、Weekday関数について説明したいと思います。
これは、ある日付の曜日を、曜日に対応した数字で表してくれる、というものです。
日曜日(もしくは月曜日)を先頭の「1」として表し、最後の土曜日(もしくは日曜日)を「7」として表してくれます。
書き方は以下の通りです。
=WEEKDAY(日付,数字の表し方)
日付の部分は、日付が記載されているセルを指定すればOKです。
数字の表し方は、入力するものが以下のように決まっています。
1
日曜日:1 ~ 土曜日:7 で表示されます。
2
月曜日:1 ~ 日曜日:7 で表示されます。
※上記以外にもあります。
すると、以下のように表示されます。
あとは、VLOOKUP関数などで、1ならば日曜日、4ならば水曜日などと表示すればOKです。
ですが…、正直これだけならばWeekday関数を使う意味はありません。手間もかかってしまうので。
今のところ思いつく使い道と言えば、「曜日の形式を変更したいとき」くらいです。
例えば、曜日の表記を「金」から「金曜日」に変えたいとします。ですが、表記を変えると、場所も変わってしまいます。本来ならば金曜日はアネックスですが、本社になってしまっています。
以下のD2セル。さっきまで「アネックス」だったが、「本社」に変わってしまった
これは、場所を表すIF文の条件が、
=IF(B2=”金”,”アネックス”,”本社”)
「金」ならば本社 になってしまっているからです。
IF文の条件を「金」ではなく、曜日に対応した数字にすると、曜日の表記が変わっても安心です。
このように、表記を「金曜日」→「Friday」に変えても、場所は変わりません。
まとめ
方法1:日付と曜日を1つのセルにだけ入力し、ドラッグ
方法2:日付の書式で曜日を表示させる
方法3:日付をテキスト形式の曜日に変換する
応用編:Weekday関数
今回はこの3つ+1の曜日を表す方法を紹介しました。いろいろな方法がありますが、みなさんのやりやすい方法でOKです。ぜひとも使いこなして、曜日を自由自在に表してください。