小技集

トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ



2024年10月4日【ID:0】

メンバー限定

【Excel】カレンダーに「休」を表示(祝日などを考慮)


以下のカレンダーのように、「休」を自動で表示する方法について解説していきます。
反映される「休」は、固定の曜日と休日一覧に登録した日付になります。
※以下の例では土日を固定の休みとしています。


・カレンダーに「休」を表示する

固定の曜日の休みと休日一覧に登録した日付を考慮して「休」と表示させる場合は、『NETWORKDAYS.INTL関数』が便利です。

この関数では、対象期間の営業日数を求めることができます。

例えば、2024/7/5が休みはどうかを判定したい場合、NETWORKDAYS.INTL関数を用いて2024/7/5から2024/7/5の期間(1日間)の営業日数を求めます。
その日数が0の場合が休みになります。

まずは、カレンダーに各日付(1日間)の営業日数を表示させます。
NETWORKDAYS.INTL関数の使い方は、以下になります。

=NETWORKDAYS.INTL(開始日, 終了日, [週末], [祭日])
// 開始日:対象期間の開始日
// 終了日:対象期間の終了日
// [週末]:固定の休みとする曜日を指定(省略時は土日休み)
// [祭日]:固定以外の休日をまとめた一覧を指定(省略時は対象なし)

引数の[週末]に関しては、以下の候補から簡単に指定することができます。

実際に、以下のカレンダーの先頭(セルC3)にNETWORKDAYS.INTL関数を用いて営業日数を求めていきます。
その際の数式は以下になります。

=NETWORKDAYS.INTL(B3,B3,1,$F$3:$F$20)
// 固定の休みを土日とする場合は、引数の[週末]に1を指定する
// 他のセル(C列全体)にコピーした際に休日一覧の参照位置が移動しないように、引数の[祭日]に関しては絶対参照($)にする

入力できたら該当する列(C列)の最終行までコピーします。
この時、「0」が表示された日付が休みになります。


後は、「0」が表示されたセルを「休」という文字に、それ以外のセルを空にすることで完成です。
条件に応じて表示させる内容を変える場合は、『IF関数』を活用します。
この関数の使い方は、以下になります。

=IF(論理式, 値が真の場合, 値が偽の場合)
// 論理式:条件を指定
// 値が真の場合:条件を満たした場合に表示する値を指定
// 値が偽の場合:条件を満たしていない場合に表示する値を指定

実際に、先ほどのNETWORKDAYS.INTL関数と組み合わせると、以下のようになります。

=IF(NETWORKDAYS.INTL(B3,B3,1,$F$3:$F$20)=0,"休","")

入力できたら該当する列(C列)の最終行までコピーします。
これだけで、「休」という文字を表示させることができます。

ExcelVBAレベル確認

・候補にない曜日の組み合わせを休みにする

次は、以下の候補([週末]に指定する曜日)の中に理想的な曜日の組み合わせが存在しない場合の指定方法について解説していきます。

この候補の中だと、「土日、日月、月火、…」のように2日間連続した曜日、もしくは「日、月、火、…」のように単体の曜日でしか指定することができません。
そのため、「月水」や「金土日」のような曜日を固定の休みとする場合は、別の方法で指定する必要があります。
そのような際は、以下のように指定します。


続きはIT予備メンバー限定です。

メンバー限定コンテンツになります。




IT予備メンバーページと連携することで内容を確認することができます。

メンバーとは


すでにメンバーの方は、
ログインして連携してから、こちらを更新すると閲覧できます。
※連携しても確認ができない場合は、少し時間を置いてご確認ください。

ログイン(新しいタブ)
※[ログイン]→[設定]→[IT予備-連携]で連携できます


パソコンで開く場合は、記事の最後に「リンクコピー」があるためご活用ください。


メンバー募集
ExcelVBA学習ロードマップ配布 ExcelVBA学習ロードマップ配布





リンクの共有はこちらから行えます。

  リンクコピー Twitter Facebook はてなブックマーク Pocket
トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ


- 人気の記事 -



- メンバー限定 [一覧] -



サイト累計閲覧数

4346714

有料動画講座
(買い切り)

Excel完全制覇


ちょっとした機能 便利ツール
【小技集】

【Excel】VLOOKUP関数の参照元の表を切り替える

【Excel】条件を満たしたセルに連番を入力

【Excel・Googleスプレッドシート】セルを囲む薄い線を非表示にする

【ExcelVBA】ダブルクリックで塗りつぶしとリセットを繰り返す

【Excel】フィルターの設定を保存する

【Excel】表記を統一する際に便利な関数7選

【ExcelVBA】選択セルの列幅を自動調整

【ExcelVBA】数式「AND(3,4)」とVBA「3 And 4」は違う!?

【Googleスプレッドシート】行や列の固定方法

【Excel】フィルターで瞬時に絞り混むショートカット

【Excel】最終行のデータを抽出する新関数

【Excel】数式の引数に途中の行から最終行までを指定

【Excel】プランごとの金額をSWITCH関数で求める

【Excel】PDFファイルを読み込む方法

【Excel】グラフ上で目標値を可視化

【Excel】FILTER関数で空白を空白のまま抽出する

【Excel】特定のセルの値を複数箇所に一括入力

【ExcelVBA】現在の日時を取得

【Excel】表の最終行を選択するリンクを作成

【Excel】FILTER関数で必要な項目のみを抽出

【Excel】指定したセルを別のセルの間に移動する

【Excel】○○IF(S)関数で便利な「*」と「?」とは

【Excel】FILTER関数で存在しない場合に好みのデータを表示

【Excel】値がない行(列)を自動で色付け

【Excel】マトリックス表から値を抽出する方法





一覧ページへ

トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ

メンバーに加入すると
多くの特典が得られます

・全作品ダウンロード
・コンテンツ閲覧管理
・チャットサポート


 詳しくはこちら 

閉じる

※メンバーページと連携すると
表示されなくなります