You are on page 1of 3

VBA マクロ 書式設定付きカレンダ入力

ファイル名 MC_Calender2.xls  ユーザーフォームでカレンダを表示して、 クリックした日付をアクティブセルに入力する マクロです。


* Excel2002で使用する場合は、 [ツール]メニューの[オプション]でセキュリティレベルを「中」に設 定してください。

(マクロの特徴)  何年のどの月でもカレンダ表示することができ、 クリックするだけで指定したセルに日付 を入力できます。日付は、コンボボックスで選択されている書式で入力されます。 (マクロの使い方) 1)日付を入力したいワークシートと、MC_Calender2.xls を同時に開きます。


*ファイルのダブルクリックで開いた場合、OS によっては、1 つの Excel 内で複数のウィンドウが開かず、 ファイルごとに Excelが起動してしまうので、MC_Calender2.xls は、 [ファイル]メニューの[開く]で開 いてください。

2)日付を入力したいワークシートをアクティブにしてから、 [ツール]メニューの[マク ロ]→[マクロ]をクリックして、MC_Calender2.xls!Calender_Browserを実行しま す。すると、次のようなユーザーフォームが表示されます。

カレンダのユーザーフォームは、 自由に移動で きます。また、モードレスで表示されるため、 ワークシート上のセルに自由に入力できます。 ボタンの操作で月を切り替えられます。

3) 日付を入力したいセルを選択してから、 カレンダを操作して入力したい日付をクリック すると、アクティブセルに日付が入力されます。

日付は、コンボボックスで選択 されている書式で入力されます。

4)コンボボックスで日付の書式を変更できます。

5)クローズボタンで終了すると、次のようなダイアログが表示されます。

このダイアログは、 VBAのコードを変 更することにより、表示しないように することができます。

[ボタン等の説明]

ユーザーフォームをたたむ
ユーザーフォームをたたんだ 状態にしておくと、場所をと らないので、マクロを起動し た状態のまま、作業を続ける ことができます。

日付の書式を選択する

10 年前の月を表示

10 年後の月を表示

1 年前の月を表示 1 月前の月を表示

1 年後の月を表示 1 月後の月を表示

[終了時のダイアログの表示をやめる]

終了時のダイアログを表示させないように するには、V i s u a l B a s i c E d i t o r で UserForm1 の VBA コードを開いて、Sub プロシージャUserForm_QueryClose 内の ステートメント (UserForm2.Show をコメ ントにするかまたは削除します。

[補足説明]

このマクロは、 ワークシート 「Sheet1」 のセ ル「A1」 「A2」 「A3」をマクロのデータ保持 用に使用しています。

*このマクロのワークシートは、 ファイルを開くときに非表示に設定しています。 ワークシートを表示したい ときは、 [ウィンドウ]メニューの[再表示]をクリックして、ブック「MC_Calender2.xls 」を表示してく ださい。

You might also like