Excelのカレンダーコントロールをダウンロードできない方向けの自作マニュアル

Excelのカレンダーコントロールをダウンロードできない方向けの自作マニュアル

複数の方からご要望をいただいたので記事にしました。ネット繋げない環境でも需要があるみたいで、勉強になります!


はじめにお読みください

  • この記事は、2022/10/23公開のダウンロードとコピペで使えるExcelVBAのカレンダーコントロールで紹介しているモジュールを、環境の制限によってダウンロードできない方へ向けて、同じものを作成するための解説です。
  • 元記事でダウンロード&インポートする、M_CalendarSetting(標準モジュール)とF_Calendar(フォームモジュール)の2つを作成します。
  • 利用するには、シートモジュールへの記述が必要なので、そちらは元記事を参照ください。

M_CalendarSetting(標準モジュール)

作成

VBEにて、「挿入」から「標準モジュール」を選択します。

プロパティウィンドウ(左下)から、モジュールの名前をM_CalendarSettingへ変更します。

コードの貼り付け

以下を開いて、作成したM_CalendarSettingモジュールへコピペしてください。

F_Calendar(フォームモジュール)の作成

作成

VBEにて、「挿入」から「ユーザーフォーム」を選択します。

モジュールの名前をF_Calendarへ変更します。ツールボックスが表示されていない場合は「表示」→「ツールボックス」から出しておきます。

フォームを選択した状態で、プロパティウィンドウ(左下のリスト)から、以下の表の項目を探して、属性(プロパティ)を変更します。

プロパティ名 意味 変更後の値
Caption 標題 カレンダー
Width 200
Height 高さ 200

コンボボックスの挿入

ツールボックスからコンボボックスを選択してフォーム上でクリックして挿入します。2つ挿入して、それぞれ以下の表を参考に名前とプロパティを設定します。

左側 右側
オブジェクト名 cmb_year cmb_month
Top 上からの位置 6 6
Left 左からの位置 12 90
Width 54 36
Height 高さ 15 15
Style スタイル 2 – fmStyleDropDownList 2 – fmStyleDropDownList

スピンボタンの挿入

ツールボックスからスピンボタンを選択してフォーム上でクリックして挿入します。以下の表を参考に名前とプロパティを設定します。

オブジェクト名 spn_monthUpDown
Top 上からの位置 6
Left 左からの位置 150
Width 24
Height 高さ 15

ラベルの挿入

ツールボックスからラベルを選択してフォーム上でクリックして挿入します。挿入されたラベルのCaptionを削除して、テキストを空にしておきます。

なお、ラベルは MS UI Gothic の 11 サイズにしています。これ以降登場するラベルは、すべて同じフォント、サイズです。

ラベルをコピペして7つにして、それぞれ以下の表を参考に名前とプロパティを設定します。左から右方向に1, 2, 3, …と名前を付けます。(下図の赤数字は、オブジェクト名末尾の数字を表しているもので、実際は空です。)

1番目 2番目 3番目 4番目 5番目 6番目 7番目
オブジェクト名 lbl_day1 lbl_day2 lbl_day3 lbl_day4 lbl_day5 lbl_day6 lbl_day7
Top 上からの位置 60 60 60 60 60 60 60
Left 左からの位置 12 36 60 84 108 132 156
Width 18 18 18 18 18 18 18
Height 高さ 12 12 12 12 12 12 12

1段目をコピーして、2段目から6段目まで、最後がlbl_day37になるようにラベルを作ります。幅、高さ、左からの位置は上と同じで、上からの位置だけ変えます。ここが大変ですががんばりましょう!

2段目 3段目 4段目 5段目 6段目
Top 上からの位置 78 96 114 132 150

その他のコントロール

残りは、見出しのためのラベルです。プログラムでは使っていないので、実はなくても動きます。(もちろんあったほうが良いです。)

年月 曜日
オブジェクト名 lbl_year lbl_month lbl_sun lbl_mon lbl_tue lbl_wed lbl_thu lbl_fri lbl_sat
Caption 標題
Top 上からの位置 10 10 36 36 36 36 36 36 36
Left 左からの位置 66 126 12 36 60 84 108 132 156
Width 18 18 18 18 18 18 18 18 18
Height 高さ 12 12 12 12 12 12 12 12 12

ラベルの色を変える

最左列のラベルをすべて選択して、プロパティウィンドウのForeColorを赤にします。

最右列のラベルは、青にします。

コードの貼り付け

ここまで見ていたのは、F_Calendarモジュールの「オブジェクト表示」です。コードは、モジュールを右クリックして「コードの表示」を開いた画面へ書きます。

以下を開いて、コード画面へコピペしてください。

おわりに

オブジェクト名はすべて半角です。名前が違うとエラーが起こってしまうので、できるだけコピペしてもらったほうがいいかと思います。ラベルを作るのが大変ですが、がんばってください!

もし、コードの解説が見てみたいとか、どうやって動いてるか興味あるという方がいらしたら、コメントくだされば動画つくるかもしれませんのでお気軽にどうぞ!

公開日:2024/05/11

書籍を執筆しています。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

コメントは承認制ですので、反映までしばらくお待ち下さい。(稀にスパムの誤判定にて届かないこともあるようですので、必要な際はお問い合わせからお願い致します。)

YouTubeでQ&Aコンテンツを企画しています

運営しているYouTubeチャンネルで、ご相談やご質問を募集しています。動画のコメントやお問い合わせページからお気軽にご相談をお寄せください。