プロが教えるわが家の防犯対策術!

作業ブックのシート名「休日」に「B1:M135」に
2023年度~2032年度までの休日を設定しております。
休日は毎年「土日・祝日・11月11日・12月29、30、31日・1月01、02、03日」です。
年度が替わるごとに毎年シート名「休日」を昨年度の上に新年度の休日を書き込み保存をしております。
Excelの機能を使用して休日「毎年「土日・祝日・11月11日・12月29、30、31日・1月01、02、03日」を自動で更新できる方法があれば教えてください。
このシートを使用して
別のシートに
セルDA119「=TODAY()」
セルDA120=WORKDAY(DA199,1,休日!B1:M135)
セルDA121=WORKDAY(DA199,2,休日!B1:M135)
セルDA122=WORKDAY(DA199,3,休日!B1:M135)等々設定しており
セルAA27にてプルダウン選択できるようにしており
AA27にそれぞれ「1/6、1/10、1/11、1/12」と表示されるようになっております。
毎年休日を更新することなく自動更新できる方法を教えてください。
シート名「休日」を設定でも構いませんし、
セルDA119「=TODAY()」
セルDA120=WORKDAY(DA199,1,休日!B1:M135)
セルDA121=WORKDAY(DA199,2,休日!B1:M135)
セルDA122=WORKDAY(DA199,3,休日!B1:M135)等々設定を変更でも構いません。
よろしくお願いします。

質問者からの補足コメント

  • 休日の一部画像を添付いたします。
    よろしくお願いします。

    「エクセルの休日について教えてください。」の補足画像1
      補足日時:2023/01/06 15:46

A 回答 (1件)

こんにちは



>自動で更新できる方法があれば教えてください。
予め先の数年分を作成しておくなどの対応も考えられるところだと思いますが、あくまでも「自動更新」となると、マクロを利用すればできないことはありません。
しかしながら、後で述べるような問題点もあるので、質問者様が作成・管理できない様であるならやめておいた方が良いと思います。

もしも、ご自身で作成できるのであれば、以下のような考え方でできるのではないかと思いますj。
・ブックオープン時に休日シートをチェックし、その年の表が既にあれば何もしない。
・その年の表がなければ、1年分の休日を更新する。

>「土日・祝日・11月11日・12月29、30、31日・1月01、02、03日」
のうちの祝日以外は固定日または単純計算で求められるので問題は無いと思います。
祝日の求め方としては2つの方法が考えられます。
1)Web上の祝日データ等を取り込む。
2)計算で求める。

1)に関しては、必ず存在する情報ソースが必要となります。
例えば、国が発表する祝日一覧など。
とは言え、URLが変わる可能性やページの構成が変わる可能性もあるので、不変とは言えません。
2)は現行法に基づく計算になるので、こちらも永続的とは言えません。

この辺りが上に述べた「問題点」で、近いところでは、オリンピック関連で2020年と2021年の「海の日、スポーツの日、山の日」が移動されています。
1)の一覧でもこれは別発表になっていたり、2)では当然ながら計算できないなどの問題があるということです。

祝日は「国民の祝日に関する法律」で定められていますが、上の祝日の移動(=臨時的)とは別に、これまでに何度も法改正がなされて来ています。
(=祝日が増えたり、名称が変わったり、移動したりしている)
1)の方法であればこれには対応できるはずですが、2)の方法だと都度計算ロジックを修正する必要が生じます。
これらの問題に対応できるためには、質問者様が作成・管理できる事が必須となるという意味です。


※ ということで、ここに揚げた情報程度からご自身で作成できない様であれば、年に一度の作業で済むことですので、あきらめた方が宜しいと思います。
※ 更新忘れを防止をしたいのなら、オープン時のマクロでその年のリストをチェックし、無ければアラートを出すといった程度のものにしておけば、簡単に作成でき、かつ永続的に使用可能でしょう。
(年末に、翌年の休日リストの存在をチェックする方がよいのかもしれませんね)


ちなみに、現行法での祝日の決まり方は以下の5通りあります。
計算で求めるのなら、これらを分けて考えれば計算することが可能です。
◇ 日にち指定の祝日
元日、天皇誕生日、昭和の日 など
このうち、政令で定められるもの 建国記念の日

◇ 「〇月の第△月曜日」などの指定の祝日
成人の日、海の日、敬老の日、スポーツの日

◇ 春分の日、秋分の日
天体の軌道によるものなので計算は可能ですが、官報に掲示されることで確定するため、計算値が絶対とは言えません。
(異なることはまず無いとは思いますが)

◇ 振替休日
祝日が日曜日に当たるときその日の後の最も近い平日を休日とする

◇ 祝日に挟まれた平日
国民の祝日に挟まれた平日は休日とする
    • good
    • 1
この回答へのお礼

回答ありがとうございました。
詳しく説明をしていただき、感謝いたします。
記者の回答を元に再度検討してみます。

お礼日時:2023/01/06 17:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!