Excelではデータ入力時にUIコンポーネントを使うこともできますが、Windowsでしか使えなかったり、他のUIと違って浮いてしまいます。特によく使いたくなるのが日付入力、カレンダーコンポーネントでしょう。 ネット上では様々な情報がありますが、今回はExcel VBAだけで作られたExcel-Calendar-Controlを紹介します。

Excel-Calendar-Controlの使い方

日付のセルをクリックしたところです。自動的にカレンダーが表示されます。

呼び方は簡単で calendar.Show を実行するだけです。VBAだけで作られているのでmacOS版でも利用できます。日付を選択したら、それがセルに自動的に反映されます。この辺りはVBAを使ってカスタマイズできるでしょう。

Excel-Calendar-ControlはVBA製のソフトウェア(ソースコードは公開されていますがライセンスは明記されていません)です。

hazemElgabra/Excel-Calendar-Control: A calendar form for excel which can be easily controlled through VBA