事務作業の省力化や資料作成に役立つ、Excelの使い方を紹介

Excelの機能を最大限に生かして、業務の省力化や経営状況を分析できる資料の作成方法を解説します。

関数を使って「万年カレンダー」を作る(その1)

Excelの関数を使えば、簡単に「カレンダー」を作ることができます

  関数を使えば、「年」「月」を指定するだけで自動的に「日付」「曜日」が入力される「カレンダー」を作ることができます。

「年」「月」を入力するだけで、正しい位置に日付が表示される

    f:id:k-ohmori9616:20190805100847p:plain

 

条件付き書式を使って「祝日に色を付ける」「対象月以外の色を変える」

 さらに条件付き書式を組み合わせれば「祝日の色を変える」ことや、「対象月以外の色を変える」ことができます。 

    f:id:k-ohmori9616:20190805145752p:plain

 

Excel上で「日付」「シリアル値」で扱われます。

 入力する際に「スラッシュ(1/1)」「1月1日」の形式で入力することで、そのDATAは「日付」と認識され自動的にシリアル値として扱われます。

 

カレンダーを作成する

 DATE関数WEEKDAY関数を使って、日付」が自動的に入力されるカレンダーを作成します。

  1. 入力された「年」「月」からDATE関数を使って「開始日」を作成します。
  2. WEEKDAY関数を使って「第1月曜日」の日付を計算します。
  3. 「第1月曜日」「1」を加えていくことで日付を入力していきます。
  4. 表示形式を「日付」だけが表示されるように変更します。
  5. 「祝日の一覧表」を用意し、条件付き書式「祝日」に色を付けます。
  6. MONTH関数で条件付き書式の「条件」を作成し、対象月以外の日付の色を変えます。

 

1.入力された「年」「月」をもとに数式を使って「開始日」を作成します

 「開始日」は直接入力せずDATE関数を使って入力します。

  1. 「開始日」の欄に、DATE関数で「年」「月」「1」を合体させます

    数式=DATE( ”年" , ”月” , 1 )

    f:id:k-ohmori9616:20190805101221p:plain

 

2.カレンダーの左上「第1日曜日の日付」を算出します

 作成するカレンダーは「日曜始まり」なので、数式を使ってカレンダーの左上(第1日曜日)の日付を計算します。

    f:id:k-ohmori9616:20190806085214p:plain

 

指定した「月(年月)」の曜日WEEKDAY関数を使って計算します
  1. WEEKDAY関数「月初」が何曜日かを計算し「指数」を求める
  2. 第1日曜日が「開始日」から「何日前か」を計算する。
  3. 「開始日」から「何日前か」を減じて「第1日曜日の日付」を求める

    数式2019/1/12018/12/30

    f:id:k-ohmori9616:20190806091259p:plain

    f:id:k-ohmori9616:20190805150902p:plain


※ カレンダーが「日曜始まり」なので、WEEKDAY関数の指数は「1」になる  

 「月曜始まり」のカレンダーの場合は、指数を「2」にする。

    f:id:k-ohmori9616:20190805150952p:plain

 

第1日曜日が計算されました

 指定した「年」「月」第1日曜日が計算されました。

    f:id:k-ohmori9616:20190805102021p:plain


3.第1日曜日を基準にして、第1週目の日付の計算式を入力

 1列目の「月曜日」のセルに、左隣のセルの日付「1を加える」数式を入力し右方向にコピーします。

  1. 第1日曜日の右隣りのセルに数式「 = B7 + 1 」と入力
  2. 「フィルハンドル」をドラッグして、1週目の最後の「土曜日」までコピーします

   ※ フィルハンドルの説明は最下行にあります

    f:id:k-ohmori9616:20190805114320p:plain

 

2週目を設定します

 2列目の左端のセルに、「1列目の右端」のセルに「1を加える」数式を入力し、「月曜日」のセルに左隣のセル「1を加える」数式を入力し右方向にコピーします。

  1. 第2日曜日に、1列目の右端に1を加えた数式=H7+1を入力
  2. 第2月曜日左端のセルに「1を加える」数式を入力し「フィルハンドル」をドラッグして、2週目の最後の「土曜日」までコピーします

    f:id:k-ohmori9616:20190806095158p:plain

 

3週目以降も同様に設定します

    f:id:k-ohmori9616:20190805114743p:plain

 

4.セルの「書式」を変更して、「日」だけを表示します

 セルの表示形式を変更して、表示を「日」だけが表示されるように変更します。

  1. 「日付」の部分を範囲選択して、右クリックします
  2. ポップアップリストから「セルの書式設定」を選択します
  3. セルの書式設定で、「表示形式」のタブを選択します
  4. 分類で「ユーザー定義」をクリックします
  5. 種類に「d」を入力(※ リストにある場合はそれを選択)

    f:id:k-ohmori9616:20190805115344p:plain


様式を整えて完成

 表全体の「配置」を変更して、セルの中央に文字が表示されるようにします。

  1. 表全体を範囲選択
  2. 「ホーム」タブを選択
  3. 配置で「上下中央揃え」を選択
  4. 配置で「中央揃え」を選択

    f:id:k-ohmori9616:20190805120330p:plain

 

対象月を変更します

 月の指定を「2」にすると、開始日の曜日等が正しく表示されます。

    f:id:k-ohmori9616:20190805121053p:plain

 

5.条件付き書式を使って「祝日」の色を変える 

 条件付き書式を使えば、用意した「祝日一覧」の表を使って祝日の色を変えることができます。

    f:id:k-ohmori9616:20190805135250p:plain

 

祝日一覧の表を用意します

 別シートに祝日一覧の「表」を作成し、その「表」をテーブル化「祝日」と名前を付けます。

 ※「祝日の表」をテーブル化することで、「祝日のデータ」を編集(挿入・削除)しても、自動で表の範囲が変更されるので範囲設定をやり直す必要がありません。

  1. 祝日一覧のどこか1カ所を選択
  2. 「挿入」タブを選択
  3. 祝日一覧の範囲が選択されているのを確認
  4. 「先頭行をテーブルの見出し・・・」にチェックを入れる

    f:id:k-ohmori9616:20190805131925p:plain

 

テーブルに「名前」を付けます

 テーブル名を「祝日」に変更します。

  1. テーブル化した範囲のどこか1カ所を選択
  2. 「テーブルデザイン」のタブが表示されるので選択 テーブルの範囲を選択していないと表示されません)
  3. 「テーブル名」「祝日」と入力します

    f:id:k-ohmori9616:20190805132910p:plain

 

条件付き書式を入力します
  1. 「数式を入力して、書式設定・・・」を選択
  2. 数式「 =COUNTIF( 祝日,B7)=1 」を入力  

    f:id:k-ohmori9616:20190805131216p:plain

 

COUNTIF関数「範囲」には、範囲に付けた「名前」を入力します

    f:id:k-ohmori9616:20190805131046p:plain

 

「祝日」が赤く塗りつぶされました

    f:id:k-ohmori9616:20190805135551p:plain

  

6.条件付き書式を使って、「対象月」以外の部分を灰色にします

 条件付き書式の条件MONTH関数を使って条件を設定することで、「対象月以外」の日付部分の色を変えることができます。

    f:id:k-ohmori9616:20190805151550p:plain

 

対象月以外の部分の色「薄い灰色」に変更します
  1. 日付部分を範囲選択
  2. 「ホーム」タブを選択
  3. 「条件付き書式」を選択
  4. 「新しいルール」をクリック

    f:id:k-ohmori9616:20190805122007p:plain

 

数式を入力して、「条件」を設定します
  1. 「数式を入力して、書式設定・・・」を選択
  2. 数式「 =MONTH(B7)<>$C$3 」を入力  

    f:id:k-ohmori9616:20190805133652p:plain

※ 条件付き書式を「範囲」に設定する場合、「範囲の左上」のセルを設定すれば自動的に「相対参照」になります。

※ 数式が自動で「B7 ➡ B8 ➡ B9・・・」、「C7 ➡ C8 ➡ C9・・・」となります。

 

「該当月」以外灰色になりました

 「1月27日~1月31日」「3月1日~3月2日」の部分が灰色になっています。

    f:id:k-ohmori9616:20190805134137p:plain 

 

フィルハンドルを使えば、簡単に「コピー」「選択」ができます

    f:id:k-ohmori9616:20190129135230p:plain

 

 その他にもVLOOKUP関数を使えば、リスト形式で入力した「スケジュール表」 から「予定表」を作成することができます。

 

 今回は「年」と「月」を選択するだけで「カレンダー」が作成される方法を説明しました。

 その2では既に「1日から入力されているカレンダー」「土・日」「祝日」の部分に条件付き書式を使って「色を付ける」方法を説明します。

    f:id:k-ohmori9616:20190805140824p:plain

 

 

k-ohmori9616.hatenablog.com