- Home »
- Excel講座の総目次 »
- Excel VBA入門:目次 »
- カレンダーコントロール
- このページではOffice XpのAccess2002のカレンダーコントロールを利用しています。
Accessがインストールされていない環境ではこのページで説明している操作はできません。
Excelでカレンダーコントロールを使えるようにする Topへ
- [Alt]+[F11]でVBEを開きます。
- メニューバーの[挿入]→[ユーザーフォーム]を実行して、ユーザーフォームを表示します。
- メニューバーの[ツール]→[その他のコントロール]を選択します。
- 「コントロールの追加」ダイアログで「Microsoft カレンダーコントロール 10.0」にチェックを入れて[OK]ボタンをクリックします。
カレンダーコントロールをユーザーフォームに追加する Topへ
- [ユーザーフォーム]を実行して、UserForm1を作成します。
- 「ツールボックス」の「ユーザーフォーム」ボタンをクリックしてONにします。
UserForm1内でクリックまたはドラッグして、Calendar1を挿入します。
コードを作成する Topへ
- シート1でフォームのボタンをクリックしてUserForm1を表示するコード
- 標準モジュールを挿入し、Module1に
- Sub myCalendar()
UserForm1.Show
End Sub
とコードを入力します。
- 連続入力にするにはモードレスに設定します。
Sub myCalendar()
UserForm1.Show vbModeless
End Sub
- UserForm1でコードを表示し、以下のコードを入力します。
- Calendar1をクリックしたら、アクティブセルがA列のセルであるかどうかを判定し、A列のセルであったら日付を入力します。
Private Sub Calendar1_Click()
If Intersect(ActiveCell, Range("A:A")) Is Nothing Then Exit
Sub
ActiveCell.Value = Calendar1.Value
End Sub
- Calendar1の初期値を今日の日付にします。
Private Sub UserForm_Initialize()
Calendar1.Value = Date
End Sub
- UserForm1を閉じたらUserForm1を削除します。
Private Sub UserForm_Deactivate()
Unload UserForm1
End Sub
- A列のセルをクリックしてアクティブにします。図ではA5セルがアクティブになっています。
- シートに配置したフォームの「Calendar1」ボタンをクリックすると、UserForm1が表示されます。
- 「Calendar1」ボタンには標準モジュールに書いたコード「myCalendar」を登録してあります。
- カレンダーの日付をクリックすると、アクティブセルにその日付が入力されます。
スポンサードリンク
よねさんのWordとExcelの小部屋|Excel(エクセル)講座の総目次|Excel(エクセル) VBA入門:目次|カレンダーコントロール
PageViewCounter
Since2006/2/27