- Home »
- エクセル Q&A(Tips):目次 »
- 指定した日にちと祭日を除いたカレンダーを作りたい
指定した日にちと祭日を除いたカレンダーを作りたい topへ
- 会社によっては休日が土日祭日といったものではなく、隔週土曜日と日曜、祝日といった感じのところや、木曜日と指定日だけといった感じのところもあると思います。
ここでは、指定した休みの日を除いた稼働日とか営業日だけの日付を並べたカレンダーを作成したいと思います。
使用する関数はExcel2010で追加された WORKDAY.INTL関数です。
WORKDAY.INTL関数の構文は =WORKDAY.INTL(開始日,日数,[週末],[祭日]) となります。引数の詳細は WORKDAY.INTL関数 をご覧ください。
-
日曜日と祭日と指定した日にちが休みの場合
- 2015年12月を例にして作成してみます。
下のカレンダーでは日曜と祭日を赤色の日にちになります。オレンジ色の日にちは指定した休日を表しています。
ここではこのカレンダーの黒色の日付を順番に列記します。
- D列に指定日と祭日を入力します。E列は説明用に入力しています、計算には何も関係していません。
なお、B列には =TEXT(B2,"aaa") としてA列の日付の曜日を表示するように設定しています。
- A2セルに入力した数式は =WORKDAY.INTL("2015/12/1"-1,ROW(A1),11,$D$2:$D$7) としました。
日曜日はすべて休日なので、WORKDAY.INTL関数の [週末]には11と入力します。
2015/12/1から開始するのですが開始日が休みにあたるかもしれませんのでその前日から開始しますので、ここでは "2015/12/1"-1 としています。
"2015/11/30"でもよいのですが、前日から開始して次の日を求めるという意味を表現したいのでこのようにしてみました。
日数の ROW(A1) は数式をコピーした時に 1,2,3・・・ とした連続した数値になるように使用しています。
-
WORKDAY.INTL関数の週末の指定方法
-
週末番号 |
週末の曜日 |
1または省略 |
土曜日と日曜日 |
2 |
日曜日と月曜日 |
3 |
月曜日と火曜日 |
4 |
火曜日と水曜日 |
5 |
水曜日と木曜日 |
6 |
木曜日と金曜日 |
7 |
金曜日と土曜日 |
11 |
日曜日 |
12 |
月曜日 |
13 |
火曜日 |
14 |
水曜日 |
15 |
木曜日 |
16 |
金曜日 |
17 |
土曜日 |
- 週末の指定は7桁の文字列での指定もできます。
- 7ケタの文字列は左から月曜日、火曜日、・・・日曜日の各曜日を表し、1は非稼働日(休日)を表し、0は稼働日を表します。
上の表に無い月曜日と水曜日を休みとしたいときは"1010000"と指定します。
-
木曜日と指定休日を除いた営業日を表示したい場合は?
- 木曜日が毎週休みの場合は[週末] "0001000" と指定します。
指定休日は F列に列記します。
数式は =WORKDAY.INTL("2015/12/1"-1,ROW(A1),"0001000",$D$2:$D$5) としました。
-
火曜日と木曜日だけを表示したい場合は?
- 月、水、金、土、日を[週末]に指定すればよいことになります。"1010111" と指定します。
- 表示したい曜日を 0 とし、表示しない曜日を 1 とします。並びは月火水・・・土日です。
数式はA2セルに =WORKDAY.INTL("2015/12/1"-1,ROW(A1),"1010111") として下方向へ必要な分コピーします。
よねさんのExcelとWordの使い方|エクセル2010基本講座:目次|指定した日にちと祭日を除いたカレンダーを作りたい