このサイトで
「エクセル 月初日 関数」
といった検索が行われているのを元に、Excelで日付が与えられたときに、月初の日(1日)を求める方法をご紹介しました。
日付から、YEAR関数を使って年、MONTH関数を使って月を取得し、その値をDATE関数に指定するという、Excelで日付関連の計算を行う基本といっていい方法です。
「エクセル 月初日 関数」
という検索を行った方は、おそらく土日を除いた月初日・第一営業日を求める方法などを調べたかったのだろうと推測していますが、YEAR・MONTH・DATE関数を使うのは、Excelの日付計算の重要な技の一つですから、あえてご紹介しました。
今回は、現実的にはこちらの要望のほうが多いと考えられる、土日を除外した月初の日付を求める方法をご紹介します。
年と月を指定したときに、土日を除いた月初日を求める方法です。
※A2セルに年、B2セルに月が入力されたときに、C2セルに月初日を表示する例
C2セルに
=WORKDAY(DATE(A2,B2,0),1)
という数式を入力する
n営業日後の日付を求められるWORKDAY関数を利用すると、簡単に土日を除いた月初日を求められます。
WORKDAY関数は分析ツールに含まれる関数です。Excel2002や2003をお使いの方で、分析ツールが組み込まれていない場合は、メニュー[ツール]−[アドイン]をクリックして表示される[アドイン]ダイアログで[分析ツール]チェックをOnにして組み込んでください。
WORKDAY関数は、第1引数の基準日から、第2引数で指定された営業日(土日を除く日)後の日付を求めてくれます。
A2セルに「2009」
B2セルに「12」
が指定されていれば
「=WORKDAY(DATE(A2,B2,0),1)」
という数式は
「=WORKDAY(DATE(2009,12,0),1)」
ということになり、
「2009年12月0日」すなわち「2009年12月0日」の前日の「2009年11月30日」の1営業日後を求められます。
「=WORKDAY(DATE(A2,B2,0),1)」ではなく
「=WORKDAY(DATE(A2,B2,1),0)」
でいいんじゃないかと考える方もいらっしゃるでしょうが、これでは上手くいきません。
WORKDAY関数の第2引数に「0」が指定されると、実質的にWORKDAY関数の処理が行われていない状態になるのでしょう。土日を含んだ日が返されてしまいます。
▼サンプルファイル(003518.xls 20KByte)ダウンロード
サンプルファイルの
C2セルに「=WORKDAY(DATE(A2,B2,0),1)」
C3セルに「=WORKDAY(DATE(A2,B2,1),0)」
という数式がそれぞれ入力してあります。
A2セル・B2セルの値を変更してどのような日付が返されるかご確認ください。
- Newer:ドキュメントスキャナーを使い契約書のチェック
- Older:長音表記(長音符号・音引き)の変更について
Home » Excel(エクセル)の関数・数式の使い方 » 日付の処理・計算 » 土日を除く月初日・第一営業日を求めるには?−WORKDAY関数