教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA フォーム&コントロール】オプションボタンの状態を取得する方法を教えて!

構文

構文は以下の通りです。

オプションボタン名.Value

解説

オプションボタンの状態を取得するためには、Valueプロパティを使用します。オプションボタンが選択されていればTrue、選択されていなければFalseが返されます。

使い方

具体的な使い方を紹介します。

Sub CheckOptionButtonStatus()
    Dim status As Boolean
    status = OptionButton1.Value
    If status = True Then
        MsgBox "オプションボタンは選択されています。"
    Else
        MsgBox "オプションボタンは選択されていません。"
    End If
End Sub

このコードでは、オプションボタンの状態をstatus変数に格納し、その状態に応じてメッセージボックスが表示されます。

プログラミング例

以下に、プログラミング例を紹介します。

Sub CheckAttendance()
    Dim studentName As String
    studentName = Range("A2").Value
    If OptionButton1.Value = True Then
        MsgBox studentName & "さんは出席しています。"
    Else
        MsgBox studentName & "さんは欠席しています。"
    End If
End Sub

上記は、小学校の先生が生徒の出席簿をExcelで管理しているとし、各生徒には「出席」や「欠席」を選択するオプションボタンが割り当てられている内容となります。このコードでは、A列に生徒の名前が入力されていると仮定し、その生徒のオプションボタンの状態に応じて出席情報を表示します。

まとめ

オプションボタンの状態を取得/設定するには、Valueプロパティを使用します。取得した値がTrueの場合はオプションボタンが選択されている状態、Falseの場合はオプションボタンが選択されていない状態を表しています。是非活用してください。