エクセル実践塾 > エクセル実践塾2013

 一月の第二月曜日である『成人の日』の日付を求めたい

 

WEEKDAY関数を利用して求めることができます

WEEKDAYは、日付に対応する曜日を返す関数です。既定では戻り値は 1 (日曜) から 7 (土曜) までの範囲の整数となりますが、「週の基準」を3にすると、その戻り値は 0 (月曜) から 6 (日曜) までの範囲の整数に変わります。

この戻り値を15から減算すれば、第二月曜日の日にちが求められます。

ただし、その月の1日が月曜日になる場合は例外となるので、IF関数で例外処理を行います。

Excel 2013/2010/2007

 

@日付の決まっている祝日は、DATE関数で求めることができます

 

AWEEKDAY関数を使うと、その月の1日の曜日を調べられます

WEEKDAY関数の「週の基準」引数を3にすると、その戻り値は 0 (月曜) から 6 (日曜) までの範囲の整数となります。

BWEEKDAY関数で得られた曜日の数値を15から減算すれば、第二月曜日の日にちを求められます

作例では、2014年の「成人の日」の日にちを求めています。

1月1日が水曜日なのでWEEKDAY関数の結果は2となります。それを15から減算することで、「成人の日」が13日になることを求めています。

C年月日形式の日付にする場合には、DATE関数を使います

 

Dただし、この計算式では、1日が月曜日の場合に正しい日にちを得られません

1日が月曜日の場合には、第三月曜日の日付となってしまいます。

Eそこで、IF関数を使って、1日が月曜日の場合だけ、8日となるような数式にします

 

F同様の方法で、次の祝日の日付も求められます

祝日名 日付 数式
成人の日 一月の第二月曜日 =IF(WEEKDAY(DATE($A$1,1,1),3),DATE($A$1,1,15-WEEKDAY(DATE($A$1,1,1),3)),DATE($A$1,1,8))
海の日 七月の第三月曜日 =IF(WEEKDAY(DATE($A$1,7,1),3),DATE($A$1,7,22-WEEKDAY(DATE($A$1,7,1),3)),DATE($A$1,7,15))
敬老の日 九月の第三月曜日 =IF(WEEKDAY(DATE($A$1,9,1),3),DATE($A$1,9,22-WEEKDAY(DATE($A$1,9,1),3)),DATE($A$1,9,15))
体育の日 十月の第二月曜日 =IF(WEEKDAY(DATE($A$1,10,1),3),DATE($A$1,10,15-WEEKDAY(DATE($A$1,10,1),3)),DATE($A$1,10,8))

※「$A$1」には、年の入力されたセル番地を指定します。

 

関連する他のページ

土曜日と日曜日の行を色分けしたい
条件付き書式を使えば、自動的な色分けが可能です

休業日を赤色で塗りつぶす
休業日の年月日を別表として用意し、COUNTIF関数で日付との照合を行い、それを塗りつぶしの条件とします

スケジュール表の土日を塗りつぶしたい
日付や曜日がシリアル値(日時データ)で入力されていれば、WEEKDAY関数を使った条件付き書式で、土日だけを強調できます

日付の曜日を数値で表したい
WEEKDAY関数を使うと、各曜日を数値で表すことができます

条件付き書式を使って、土曜日と日曜日、祝祭日を色分けする
条件付き書式のルールは、複数設定して適用できます

WEEKDAY関数を使えば、日付に該当する曜日を数値で得られる
日付のシリアル値は、WEEKDAY関数で曜日を表わす数値に変えられます

日曜日を赤色で、土曜日を青色で表示する
日付の入力されているセルをWEEKDAY関数で参照し、その値を書式適用の条件にします

条件付き書式を使って、 日曜日の列だけを塗りつぶす
WEEKDAY関数による条件式を使えば、日曜日のセル範囲だけを塗りつぶせます

WEEKDAY関数を使ってみたい
WEEKDAY関数を使うと、指定した日付の曜日を1〜7の数値で表せます

日付と一緒に曜日も表示したい
セルの書式設定でユーザー定義することにより、日本語や英語での曜日を表示させられます

日付から曜日データを取得したい
WEEKDAY関数を使えば、日付データから、曜日を表す数値データを取得できます

COUNTIF関数を使って、祝祭日や休業日のリストと、日付を照合する
あらかじめ祝祭日や休業日のリストを用意し、COUNTIF関数で日付との照合を行います

日付を曜日付きで表示したい
表示形式を変えれば、その日付の曜日も表示できます

祝祭日を黄色で塗りつぶす
祝祭日の年月日を別表として用意し、COUNTIF関数で日付との照合を行い、それを塗りつぶしの条件とします

セル範囲につけた名前を変えたい
「数式」タブの「名前の管理」で、名前を変えたり削除したりすることができます

数式に使っている、セル範囲につけた名前を変更したい
「数式」タブの「名前の管理」ボタンで、セル範囲につけた名前などの変更を行えます