今回のテーマは、Excel(エクセル)に用意されている「WEEKDAY」関数について。日付に対応する曜日を数値として取り出す基本的な使い方から、土曜日と日曜日に色を付けるといった応用まで紹介していきます。

本連載では、「よく使うけど忘れやすいMicrosoft Officeの操作」をキーワードに、Officeアプリケーションの使い方を解説していきます。記事の制作には、執筆時点で最新の状態にアップデートしたMicrosoft Office 2016を使用しています

WEEKDAY関数の基本

WEEKDAY関数にはさまざまな使い方がありますが、基本は「日付に対応する曜日を数値で返す」という関数です。使用する数式は、「=WEEKDAY(シリアル値,種類)」。シリアル値には、日付を入力しているセルを指定します。では、手順を確認していきしょう。

  • 事前に日付を入力したセルを用意する
  • 日付の右隣など、曜日を入力したいセルを選択する
  • 数式バーに「=WEEKDAY(」と入力する
  • 日付のセルをクリックして、数式にセルの番号を反映する
  • 数式に続けて「,1)」と入力する
  • [Enter]キーを押すと、曜日を示す数値がセルに入力される

事前の準備として、日付を入力したセルを用意します(図1)(図2)。次に日付を入力したセルの右のセルを選択して(画面の例ではB2)、数式バーに「=WEEKDAY(」と入力(図3)。日付の入ったセルをクリックして(画面の例ではA1)、数式にセル番号を入力します(図4)。続けて「,1)」と入力すれば、数式は完成です。

[Enter]キーを押して、数式を実行(図5)すると、B2セルに「4」という数値が入ります(図6)。数式の最後に入力した数値は週の基準を表しており、今回入力した「1」では、日曜=1、月曜=2、火曜=3、……土曜=7となります。つまり、画面の例では2018年8月1日が水曜日なので、対応する数値である「4」が返されたことになります。フィルハンドルで下の日付にも適用させて確認してみましょう(図7)。

  • (図1)A1セルに「2018/8/1」と日付を入力します

  • (図2)フィルハンドルをドラッグして下のセルに連続した日付を入力します

  • (図3)B1セルを選択して数式バーに「=WEEKDAY(」と入力

  • (図4)A1セルをクリックして数式に入力します

  • (図5)続けて「,1)」と入力して数式を完成させます

  • (図6)[Enter]キーで確定させると、2018/8/1の「水曜日」に対応する「4」が表示されました

  • (図7)フィルハンドルをドラッグして下のセルにも適用させてみましょう

曜日を「日」~「土」の文字で表す

WEEKDAY関数で曜日に対応する数値を取り出しても、直感的に「1」=「日曜」と脳内で変換できる人はほとんどいないと思います。Excelでは日付を入力したセルの書式を変更することで、「日」~「土」の文字で曜日を表すこともできます。この設定自体はWEEKDAY関数と関係ありませんが、方法を確認しておきます。

日付を入力したセルの右隣のセル(ここではB1)を選択したら、数式バーに「=A1」と入力して、[Enter]キーを押します(図8)。この数式は指定したセルの内容をそのままコピーするというものです。フィルハンドルをドラッグして下のセルにも適用させます。

「ホーム」タブの「書式」アイコンをクリックして、メニューから「セルの書式設定」を選択します(図9)。「セルの書式設定」画面の「表示形式」タブが表示されたら、左の「分類」欄で「ユーザー定義」を選択。右の「種類」欄の入力ボックスに「aaa」と入力して「OK」ボタンをクリック(図10)すると、セルの日付に対応する曜日が文字で表示されます(図11)。

  • (図8)B1セルを選択して数式バーに「=A1」を入力し、A1セルの内容をコピーします

  • (図9)フィルハンドルをドラッグして下のセルにも適用したら、「書式」アイコンから「セルの書式設定」を選択します

  • (図10)「ユーザー定義」を選択して「種類」に「aaa」と入力します

  • (図11)日付に対応する曜日に表示が切り替わります

日曜日と土曜日のセルに色を付ける

続いて、WEEKDAY関数の応用として、日曜日のセルと土曜日のセルに色を付けて目立つようにしてみます。先ほど作成した日付と曜日のセル全体を選択し、「ホーム」タブにある「条件付き書式」アイコンをクリックして「新しいルール」を選択します(図12)。「新しい書式ルール」画面が表示されたら、「ルールの種類を選択してください」欄で「数式を使用して、書式設定するセルを決定」を選択。「ルールの内容を編集してください」欄の入力ボックスに「=WEEKDAY($A1)=1」という数式を入力して「書式」ボタンをクリックします(図13)。A列を絶対参照($)にするのがポイントです。

「セルの書式設定」画面に切り替わったら「塗りつぶし」タブを選択して任意の色を選び「OK」ボタンをクリックします(図14)。「新しい書式ルール」画面に戻るので、「プレビュー」欄で色が設定されたことを確認して「OK」ボタンをクリックします(図15)。

これで条件付き書式が設定され、WEEKDAY関数で抽出した曜日が「1」、つまり日曜のセルに、指定した背景色が付きます(図16)。同じ手順で「新しい書式ルール」画面を表示し、「ルールの内容を編集してください」欄に「=WEEKDAY($A1)=7」と入力して塗りつぶし色を設定すれば(図17)、土曜日(WEEKDAY関数の7)のセルも色分けされます(図18)。

  • (図12)日付を入力したセル全体を選択して「条件付き書式」→「新しいルール」を選択

  • (図13)「数式を使用して、書式設定するセルを決定」を選択して「=WEEKDAY($A1)=1」という書式を入力します

  • (図14)「塗りつぶし」タブで色を選択して「OK」をクリックします

  • (図15)「OK」ボタンをクリックして条件付き書式を適用させます

  • (図16)日曜日(WEEKDAY関数の「1」)のセルに色が付きました

  • (図17)同様に「=WEEKDAY($A1)=7」の書式で土曜日の色を設定します

  • (図18)土曜日(WEEKDAY関数の「7」)のセルにも色が付きました