← コード一覧へ戻る
基本UserForm

チェックボックスの状態を判定する

CheckBoxのTrue・Falseを調べ、選択の有無を確認メッセージにします。

実行前に確認

  • この例はTripleState=Falseで、コードからもNullを代入しません。Nullを使う3状態の入力ではIsNullを先に判定します。
  • コードと公式仕様を照合した学習用の例です。Excel実機での実行確認は行っていません。

1サンプルコード

'【貼付先:UserForm1 のコードモジュール】
Option Explicit

Private Sub UserForm_Initialize()
    Me.CheckBox1.Caption = "明細を表示する"
    Me.CheckBox1.TripleState = False
    Me.CheckBox1.Value = False
    Me.CommandButton1.Caption = "状態を確認"
End Sub

Private Sub CommandButton1_Click()
    If Me.CheckBox1.Value Then
        MsgBox "明細あり"
    Else
        MsgBox "明細なし"
    End If
End Sub

図で見る2状態を判定

イメージ図

CheckBoxのTrue・Falseを調べ、選択の有無を確認メッセージにします。

  1. 状態

    チェックあり/なし

  2. 判定

    ValueのTrue・False

  3. 表示

    明細あり/明細なし

各操作は、このガイドに指定されたフォームのコードで行います。

コードの処理を説明する模式図です。実際の画面や実行結果を撮影したものではありません。

使い方・実行手順を確認する5つの手順で、コードの使い方を確認できます
  1. 1

    Windows版デスクトップExcelの練習用ブックを.xlsmで保存し、Alt+F11→[挿入]→[ユーザーフォーム]で、名前がUserForm1の空のフォームを用意します。各例は別々に試します。

  2. 2

    ツールボックスからCheckBox1とCommandButton1を各1個を置き、各コントロールの[(Name)]が記載どおりか確認します。

  3. 3

    UserForm1を右クリック→[コードの表示]を開き、掲載コード全体をフォームのコードモジュールへ貼り付けます。標準モジュールには貼り付けません。

  4. 4

    VBEでUserForm1を選び、F5でフォームを表示します。 チェックを入れて「状態を確認」、次に外してもう一度押します。

  5. 5

    チェックありで「明細あり」、なしで「明細なし」と表示されます。

使っている機能の公式ドキュメント(Microsoft Learn)