ExcelVBA ユーザーフォームのコンボボックス選択値を取得する方法

 

Excel VBAのユーザーフォームでドロップダウンリスト(コンボボックス)から選択された値を取得する方法について説明します。ユーザーフォームのコンボボックスはデータ入力の際、リストから選択させることで入力の正確さと作業効率を向上させます。使い方や注意点など、サンプルコードをもとに具体的に解説します。

 

📌 「これ、自動化できたらラクなのに…」と思ったこと、ありませんか?
実はその作業、Excelマクロで簡単に自動化できるかもしれません。
「でもマクロって難しそう…」という方のために、完全初心者向けの入門記事をご用意しました!

👇実務で“そのまま使える”テンプレ付きで、コピペするだけ
初心者向けエクセルマクロの作り方を解説|コピペOK実務テンプレ付き

 

Excel VBA コンボボックス選択値取得の利用

以下のようなシーンで利用されます。

1.ユーザーフォームで商品を選択し、選ばれた商品情報を表示したり計算に利用したい。

2.選択した値に基づいて別の入力フィールドの内容を変更する。

 

Excel VBA コンボボックス選択値取得の使い方とポイント

使い方

1. ユーザーフォームにコンボボックスを配置します。

2. コンボボックスのリストに選択肢を設定します。

3. 選択された値を取得し、必要な処理に活用します。

 

ポイント

1.コンボボックスの名前(デフォルトでは ComboBox1)に気をつけてください。正確に指定しないとエラーになります。

2.値が選択されていない場合に備えて、エラーチェックを行うのが望ましいです。

 

Excel VBA コンボボックス選択値取得のサンプルコード

ユーザーフォーム上のコンボボックス(例: ComboBox1 )で選ばれた値を取得し、メッセージボックスに表示する方法です。

1. ユーザーフォームを作成し、ComboBox1という名前のコンボボックスを追加します。

2. ユーザーフォームを初期化するコードで選択肢を追加します。

3. CommandButtonで値を取得するコードを記述します。

Option Explicit

Private Sub UserForm_Initialize()
    ' ComboBox1にリスト項目を追加
    ComboBox1.AddItem "商品A"
    ComboBox1.AddItem "商品B"
    ComboBox1.AddItem "商品C"
End Sub

Private Sub CommandButton1_Click()
    Dim selectedValue As String
    ' ComboBox1で選択された値を取得
    selectedValue = ComboBox1.Value
    
    ' 値が選択されているか確認し、メッセージボックスで表示
    If selectedValue <> "" Then
        MsgBox "選択された商品は: " & selectedValue
    Else
        MsgBox "商品を選択してください。"
    End If
End Sub

自分の実力を客観的にチェックしたい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集をご用意しました。

👉無料ExcelVBAベーシック選択問題138問

1.UserForm_Initializeイベントで、ユーザーフォームが開いた際にコンボボックスにリストを追加します。

2.CommandButton1_Clickイベントで、ボタンを押すと選択された値が表示されます。

3.ComboBox1.Valueを使って、選択された値を取得しています。

ユーザーフォーム上のコンボボックスから選択した値を取得し、処理や計算に使うためです。これにより、選択した内容に基づいた自動処理が行えるようになります。

 

Excel VBAエキスパートベーシックとスタンダード、どちらを選べばいいか判断が難しい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集を用意しました。

👉無料ExcelVBAベーシック選択問題138問