ある人から「エクセルで計算式をコピーすると意図した動作にならない」というヘルプが入りました。
計算式を見てみると下記のような感じ
=@IF(ISERROR(TEXT(WEEKDAY($A15,1),"aaa"))=TRUE,"",PublicHoliday.PublicHoliday($A15))
曜日を表示するか、または祝日を表示する計算式みたい。
エクセルで祝日っつーと、別シートに年ごとの祝日を列挙して、それにヒットしたら祝日と判定するってのが素人である私が思いつく方法だけど、これはもっとスマートにやっているっぽい。
でも、IF も ISERROR も TEXT も WEEKDAY も普通の関数だから良いけど、Public Holidayってなんぞ?
聞いたことがなかったのでChatGPT(正確にはリートン上の)に聞いてみたら、祝日判定をするVBAマクロだそうな。
もうちょっと詳しく教えてもらうと、
はい、エクセルVBAで祝日判定をするpublic.holidayというマクロについて詳しく説明しましょう。 🙂
概要**
使い方**
1. エクセルのVBEエディタを開き、標準モジュールを作成する
2. 祝日データを格納した表を作成する
3. public.holidayマクロをモジュールに記述する
4. セルからマクロを呼び出して使用するマクロの詳細**
応用例**
- ワークシートに祝日情報を自動表示
- 営業日カレンダーの作成
- 祝日を考慮した勤務表の作成
まとめ**
public.holidayマクロは、エクセルVBAで祝日判定を行うための便利なツールです。祝日データの管理や、ワークシートへの祝日情報の自動表示など、様々な用途で活用できます。ぜひ試してみてください! 🙂
これらの情報を参考にしました。
[1] Qiita - 【ExcelVBA】祝日を加味して営業日を調べる方法 #日付計算 (https://qiita.com/nkojima/items/f6c1d177bae96939993a)
[2] jpn.org - 国民の祝日を取得するエクセルマクロ(Excel VBA) (https://excel-vba.jpn.org/section/29/GetJPNHoliday)
[3] DDO! JP - 祝日を返すマクロ [Excel VBA] - Tera Term のススメ (http://ttm.jimba.ddo.jp/teraterm/windows/ExcelVBA/JapanHoliday)
[4] Excelの歩き方 - 【簡単】Excelで祝日を自動計算するためのVBAマクロの作り方 (https://shintaro-blog.com/automatically-calculate-public-holidays-in-excel/)リートンを利用する > https://wrtn.jp
てな感じ。
せっかくなので使ってみようと思って、どこから入手出来るのか聞いてみたら
はい、public.holidayマクロのダウンロード方法について詳しく説明しましょう。 🙂
ダウンロード方法**
- public.holidayマクロは、オープンソースのプロジェクトとして公開されています。
- 主なダウンロード先は以下の2つです:
1. **GitHub**
- [inoHolidays](https://github.com/INOPIAE/inoHolidays) というプロジェクトで公開されています。
- Excel Add-Inとして提供されており、様々な日付計算や祝日リストの管理などの機能が含まれています。2. **個人サイト**
- [addinbox.sakura.ne.jp](http://addinbox.sakura.ne.jp/holiday_logic.htm) で公開されています。
- VBAおよびVB用の祝日判定用マクロ[関数]が公開されています。
- 『kt関数アドイン/kt祝日名取得』のロジックと同じものが使用されています。使い方**
注意点**
以上が、public.holidayマクロのダウンロードと使い方の概要です。ぜひ試してみてください! 🙂
これらの情報を参考にしました。
[1] GitHub - INOPIAE/inoHolidays: Excel add-In related to public holidays (https://github.com/INOPIAE/inoHolidays)
[2] AddinBox - AddinBox(祝日マクロ-1) (http://addinbox.sakura.ne.jp/holiday_logic.htm)
[3] Stack Overflow - VBA Download Outlook Attachment by Date - excel (https://stackoverflow.com/questions/72927349/vba-download-outlook-attachment-by-date)
[4] Microsoft Community - vba function that calculates working days and I want to ... (https://answers.microsoft.com/en-us/msoffice/forum/all/vba-function-that-calculates-working-days-and-i/40655db4-10dc-4aac-8938-5c90a092e0a2)リートンを利用する > https://wrtn.jp
こんな感じでした。
でも、リンク先を見てみるとhttps://addinbox.sakura.ne.jp/holiday_logic.htmは、PublicHolidayという関数名ではないし、https://github.com/INOPIAE/inoHolidaysこっちはinoHolidaysだった。
PublicHolidayじゃないやん。
この辺がAIらしいところかな。正確じゃないところが。