土日休日を除外した月末の最終営業日をスケジュール表に表示する方法をご紹介しました。
月末の最終営業日だけでなく、その前日もスケジュール表で目立つように表示したい、といったご要望をいただくこともあります。
※「マスタ」シートのA2:A43セルに休日の一覧を作成し、A5:A35セルに日付が表示されているときに、D2セルに土日と休日を除外した月末最終営業日、E2セルにその前日をそれぞれ表示し、C25:C35セルの月末最終営業日に該当する日に「月末最終営業日」、最終営業日の前日に該当する日に「最終営業日前日」と表示する例
D2セルに「=WORKDAY(DATE(A1,A2+1,1),-1,マスタ!A2:A43)」
という数式を入力
↓
E2セルに
「=WORKDAY(DATE(A1,A2+1,1),-2,マスタ!A2:A43)」
という数式を入力
↓
C25セルに
「=IF(A25=$D$2,"月末最終営業日",IF(A25=$E$2,"最終営業日前日",""))」
という数式を入力
↓
C25セルをC35セルまでオートフィル
「土日休日を除いた最終営業日や、その前日をスケジュール表に表示する」
といった要望があるときに、どうしたらいいのか立ちすくんでしまう方というのは、最終的な目標そのままで考え込んでしまうんじゃないかと思います。
まずは最終的な目標を、小さな課題に分割することを考えましょう。
最終営業日やその前日をスケジュール表で目立つように表示するためには、最終営業日やその前日がいつなのかがわからなければどうしようもありません。最終営業日やその前日がいつなのかを調べる方法を考えましょう。
これが上記の例では、D2・E2セルに入力した
「=WORKDAY(DATE(A1,A2+1,1),-1,マスタ!A2:A43)」
「=WORKDAY(DATE(A1,A2+1,1),-2,マスタ!A2:A43)」
という数式です。
「=WORKDAY(DATE(A1,A2+1,1),-1,マスタ!A2:A43)」
は、先日ご紹介した土日休日を除いた最終営業日を取得する計算式と同じです。
「=WORKDAY(DATE(A1,A2+1,1),-2,マスタ!A2:A43)」
は、最終営業日の前日なので、WORKDAY関数の第2引数が「-2」になっているだけです。
最終営業日や最終営業日の前日が取得できてから、はじめてスケジュール表上でその日付に該当する日に、「月末最終営業日」「最終営業日前日」といった表示を行うにはどうしらいいのかが考えられます。
これがC25:C35セルに入力した
「=IF(A25=$D$2,"月末最終営業日",IF(A25=$E$2,"最終営業日前日",""))」
という数式です。
A25セルの値とD2セルの値が等しければ「月末最終営業日」
A25セルの値とE2セルの値が等しければ「最終営業日前日」
と表示し、いずれにも該当しなければ空白にしています。
この例では21日よりも前の日付が月末最終営業日に該当することはないと仮定してA25:A35セルに
「=IF(A25=$D$2,"月末最終営業日",IF(A25=$E$2,"最終営業日前日",""))」
という数式を入力していますが、月末に会社指定の休日が存在して、最終営業日の前日がもっと前になる可能性があるのなら、その可能性のある日付から入力してください。
▼サンプルファイル(003214.xls 96KByte)ダウンロード
サンプルファイルの「スケジュール表_基本」シートには上記の例を作成し、「スケジュール表_条件付き書式」シートでは、土日休日の背景色を変更したり、当日の背景色を目立たせる条件付き書式を設定してあります。
A1・A2セルの年・月を変更して、どのような表示となるかご確認ください。
- Newer:株価チャート・ローソク足の、幅・太さを変えたい−棒の間隔
- Older:拡張子が「.pps」のファイルを開くには?
Home » Excel(エクセル)の関数・数式の使い方 » 日付の処理・計算 » 土日休日を除いた最終営業日と前日をスケジュール表に表示