
意外と脳内で計算しにくい日付の計算もExcelなら一瞬ですね。
知っていると営業日数の計算が捗る玄人向けなNETWORKDAYS関数について解説していきます(#^^#)
NETWORKDAYS関数の基本構成
NETWORKDAYS(開始日, 終了日, [祭日])
以下、各引数の内容です。
開始日
起算日を表す日付を指定します。
終了日
対象期間の最終日を表す日付を指定します。
[祭日]
この引数は省略可能です。
祝日や職場の非営業日など、土日以外に稼動日数の計算から除外する日付の任意の範囲を指定します。
NETWORKDAYS関数の使い方
今回のサンプルは、先日記事にした関数うのガントチャートの営業日数の計算を元々COUNTIF関数にしていたところをNETWORKDAYS関数に置き換えてみます。
関数でガントチャートをつくってみる | Excelを制する者は人生を制す ~No Excel No Life~
【事前準備】祝日用のシートを用意する
まず、引数「祭日」に対応させる祝日用のシートを最初に用意しましょう。
こちらは、Excelは祝日を自動で判断してくれませんので、個別に用意してあげる必要があります。
ちなみに、こういう追記していく可能性のあるデータは、「テーブルとして書式設定」でテーブル化しておくと、後程記述していく関数のメンテナンスが楽ちんになるのでおすすめです(*^-^*)
「テーブルとして書式設定」についてもっと詳しく知りたい人は、以下の関連記事を参照してください。
Excelの表はなるべくテーブル化しよう!テーブルのメリット6選 | Excelを制する者は人生を制す ~No Excel No Life~
関数の記述方法
E4セルを例に挙げて解説しますね。
まず、引数「開始日」はC4セルを、引数「終了日」はD4セルをそれぞれ指定します。
今回はワークシート上の見出しの名称も引数名とまったく一緒なので分かりやすいですね。
そして、最後に引数「祭日」には事前準備しておいた「祝日」シートの日付が入力されている範囲を指定します。
今回だと、A2:A12のセル範囲を指定すると、テーブル化されているため、「テーブル1[祝日]」というように自動的にテーブル名に変わります。
これは、「構造化参照」と呼ばれる参照形式であり、「祝日」シートにデータをどんどん追加していっても、NETWORKDAYS関数の参照範囲も自動的に拡張されます。
メンテナンスフリーで楽ちんですよ(*^-^*)
なお、記述して数式を確定すると、
「終了日」-「開始日」-(期間中あれば土日の日数)-(期間中あれば祭日の日数)+1
が関数の計算結果として算出され、今回のE4セルの返り値は"11"になります。
ちなみに"11日"と表示されているのは表示形式を"0日"の形式にしているためなので、返り値は数値ですので混乱なさらず(´・ω・`)
まとめ
このように営業日を一瞬で計算できるで便利ですね。
実際のビジネスにおいて、工数を知りたい場合など、暦日よりも営業日数をもとに計算したい場合は意外と多いので活躍する機会が地味に多い関数です。
ちなみに、週末が土日以外にしたい場合は、NETWORKDAYS.INTL関数がありますので、こちらは別途記事にしていきますね。
ご参考になれば幸いですm(__)m