対象:Excel97,Excel2000,Excel2002,Excel2003,Excel2007土日を除外した月末日関連のネタを何度かご紹介してきました。EOMONTH関数とWEEKDAY関数を使って土日を除いた月末最終営業日を取得する方法、DATE関数・YEAR関数・MONTH関数を使って同様のことを行う方法、スケジュール表に月末最終営業日を表示する方法、土日を除外した月末最終営業日の前日を取得する方法です。除外するのが土曜日・日曜日だけならこれまでご紹介した方法でいいわけですが、実務では祝日・祭日・振り替え休日・その他の休業日も除外したいという要望のほうが、むしろ多いんじゃないかと思います。[スポンサードリンク]休日を除外した月末最終営業日を表示するには、WORKDAY関数を使うと便利です。第2引数に指定された前後の日付を返してくれます。第3引数に指定された日と、土曜日・日曜日を除外してくれます。第3引数に「マスタ!A2:A23」を指定しています。「DATE(YEAR(A1),MONTH(A1)+1,1)」は、A1セルに指定された日の翌月1日を求める数式です。A1セルに指定された日付の月の最終営業日が、返されるわけです。第3引数に指定された「マスタ!A2:A23」に入力されている日付と、土曜日・日曜日は除外されています。56KByte)ダウンロードサンプルファイルの「土日休日を除外した月末最終営業日」シートに上記の計算式を入力し、D1:D9セルにはA1セルに入力された日の、月末前後の日付が表示されるように設定してあります。A1セルの日付を変更したときにどのような日付がA6セルに表示されるかご確認ください。「=WORKDAY(DATE(YEAR(A1),MONTH(A1)+1,1),-1,マスタ!A2:A23)」という数式の第2引数を「-1」から「-2」にして「=WORKDAY(DATE(YEAR(A1),MONTH(A1)+1,1),-2,マスタ!A2:A23)」とすればOKです。WORKDAY関数は、2003までのExcelでは分析ツールアドインに含まれる関数ですから、2003までのExcelをお使いの方で、#VALUE!エラーが表示された場合は、分析ツールアドインの組み込みを行ってください。Officeの使い方などを紹介し続け(2012年頃からはVBA関連記事が多め)、毎日5万人の方にご覧いただいています。