ExcelVBA ラジオボタンの値を取得して選択内容に応じて処理する方法

 

ExcelVBA ラジオボタン(オプションボタン)の値を取得することで、ユーザーの選択内容に応じた処理を行えます。たとえば、アンケートフォームや条件分岐処理を行う際に活用できます。使い方や注意点など、サンプルコードをもとに具体的に解説します。

 

2025年の目標は繰り返し作業に悩まされない年にしませんか? Excel VBAを活用した効率化がその第一歩
本サイト参考:Excel VBAで自動化するコードのベースを習得したい方におすすめの記事

 

Excel VBA ラジオボタンの値を取得 利用シーン

以下のようなシーンで利用で表示します。

1.ユーザーフォームで複数の選択肢の中から1つを選んでもらう。

2.条件分岐(例: 商品の配送方法や支払い方法の選択)

3.ユーザー入力の簡素化やガイド付き入力の実現

使い方

ラジオボタンの Value プロパティを使って、どのボタンが選択されているかを判別します。

ラジオボタンのグループ化
・フォームコントロールの場合
 グループ化するには、グループボックスを使用します。
 
・ユーザーフォームの場合
 同じ Frame 内に配置することで自動的にグループ化されます。

ポイント

・グループ化に注意
グループボックスやフレームで正しくグループ化されていないと、複数のラジオボタンが同時に選択可能になります。

・初期値の設定
ラジオボタンの初期状態(デフォルト選択)を適切に設定してください。

・Valueプロパティの意味
選択されているラジオボタンの Value は True 、それ以外は False になります。

 

Excel VBA  ラジオボタンの値を取得のサンプルコード

Excel VBAで効率化の準備をしてみませんか?2025年をよりスムーズに過ごすための資格
基本的な文法やVBAの実践的な応用までを網羅的に学習できる方法は、ExcelVBAエキスパート資格の取得を目指すこと。学習を通して、より効率的に、着実に基礎を身につけることが可能です。資格取得すれば、スキルの証明にもなり、職場での評価アップにも繋がるため、勉強を進めるモチベーションにもなります。
本サイト参考:マクロ知識がないから「何から学べば良いのかわからない」という人におすすめの記事

フォームモジュール(ユーザーフォーム上にラジオボタン(オプションボタン)を設置し、選択内容を取得する)

ユーザーフォームに以下を配置

OptionButton1(例: 「選択肢A」)
OptionButton2(例: 「選択肢B」)
OptionButton3(例: 「選択肢C」)
CommandButton1(「OK」ボタン)

Option Explicit

Private Sub CommandButton1_Click()
    Dim selectedOption As String
    
    ' ラジオボタンの値を取得
    If OptionButton1.Value = True Then
        selectedOption = "選択肢A"
    ElseIf OptionButton2.Value = True Then
        selectedOption = "選択肢B"
    ElseIf OptionButton3.Value = True Then
        selectedOption = "選択肢C"
    Else
        selectedOption = "選択されていません"
    End If
    
    ' メッセージボックスで結果を表示
    MsgBox "選択されたオプション: " & selectedOption, vbInformation, "結果"
End Sub

標準モジュール(ユーザーフォームを表示)

Option Explicit

Sub ShowUserForm()
    ' ユーザーフォームを表示
    UserForm1.Show
End Sub

グループ化を正しく設定し、Valueプロパティを使用して選択状態を取得する。ラジオボタンの値を取得する方法を習得すれば、より直感的なユーザー入力フォームを作成できます。

 

Excel VBAで自動化するコードのベースを習得したい方におすすめ!

VBAエキスパート資格は、日常業務でExcelを多用し、手動作業を減らしたいと考えている方には価値あるものです。

ExcelVBAエキスパートベーシック
仕事の効率をあげるためにExcelVBAを利用する人が対象の問題集です。


ExcelVBAエキスパートスタンダード

ExcelVBAの開発を仕事にする人が対象の問題集です。

 

Excel  VBA エキスパート資格について知りたい方は、下記「Excel VBAスキルアップを目指すなら知っておきたいVBAエキスパート」をご確認ください。