チェックボックスのイベント処理

広告

チェックボックスで用意されているイベントは以下の通りです。

イベント発生条件
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 )