チェックボックスのイベント処理
広告
チェックボックスで用意されているイベントは以下の通りです。
| イベント | 発生条件 |
|---|---|
| Click | マウスでクリック |
| DblClick | マウスで2 回クリック |
| Change | 値が変更される |
| Enter | 別のコントロールからフォーカスを受け取る前 |
| Exit | 別のコントロールにフォーカスを移す直前 |
| MouseDown | マウスボタンを押す |
| MouseUp | マウスボタンを離す |
| MouseMove | マウスボタンを動かす |
| KeyDown | キーを押す |
| KeyUp | キーを離す |
| KeyPress | キーを押す |
| Error | コントロールでエラーが検出され、呼び出し元のプログラムにエラー情報を返せないとき |
| BeforeDragOver | ドラッグ アンド ドロップ操作の実行 |
| BeforeDropOrPaste | データをオブジェクトにドロップしようとするか、または貼り付けようとする |
| BeforeUpdate | コントロールのデータを変更した時の変更される前 |
| AfterUpdate | コントロールのデータを変更した後 |
例としてChangeイベントを試してみます。
フォームのコードウィンドウを開いて次のように入力します。
Private Sub check1_Change()
If check1.Value = True Then
check2.Enabled = True
Else
check2.Enabled = False
End If
End Sub
チェックボックス1がチェックされた時だけチェックボックス2が有効となるようにします。
呼びだすマクロは次の通りです。
Sub テスト()
Load sampleForm
sampleForm.check1.Caption = "20歳以上"
sampleForm.check1.Value = False
sampleForm.check2.Caption = "既婚"
sampleForm.check2.Value = False
sampleForm.check2.Enabled = False
sampleForm.Show
End Sub
ではマクロを実行します。
チェックボックス1をチェックした時だけチェックボックス2が有効になります。
( Written by Tatsuo Ikura )
OfficePro