【ExcelVBA入門】ユーザフォームでオプションボタンを使う方法とは?

皆さんは、VBAでオプションボタンを使ったことがありますか?

複数の選択肢の中から、1つ選択するような画面を作るときにオプションボタンはよく使います。

そこで今回は、

・オプションボタンとは?

・オプションボタンの使い方

といった基礎的なことから、

・オプションボタンの配置・設定方法

・オプションボタンの値をVBAで使う方法

・合わせて覚えておくと便利なコントロールの使い方

といった応用的な方法まで、徹底的に解説します!

オプションボタンとは

はじめに、オプションボタンについて簡単に解説します。

オプションボタンとは、次のように複数の選択肢から1つ選択するためのコントロールです。

ちょっとしたアンケートだけでなく、複雑なシステム開発でもオプションボタンを使うケースは多いので、覚えておくと便利です。

オプションボタンの使い方

次に、オプションボタンの使い方について解説します。

オプションボタンの配置・設定方法

まず、オプションボタンの配置・設定方法について解説します。

オプションボタンは、フレームの中に置くことで同じグループとして認識させることができるため、


フレーム作成

オプションボタンをフレームに配置

の流れで作っていきます。

具体的な手順は、次のとおりです。

1. ツールボックスからフレームを選択

2.ユーザーフォームにドラッグしてフォームを配置

3. ツールボックスからオプションボタンを選択

4. ドラッグしてフォームの中にオプションボタンを配置

5. プロパティを変更

※プロパティウィンドウが出ていない場合は、「表示タブ→プロパティウィンドウ」を選択するとでてきます

ただ、ここまでプロパティの設定値が多いと覚えるのが大変そうですよね。

以下最低限覚えておくと幸せになれるプロパティを紹介します。

プロパティ1:オブジェクト名

オブジェクト名はオプションボタンの値をVBAで操作するときに使うため、わかりやすい名前に変更しておくのがおすすめです。

opb〇〇1opb〇〇2opb〇〇3のように先頭3文字でオプションボタンとわかるようにしておくと、VBAを書くときに書きやすいです。

プロパティ2:Caption

Captionでは、オプションボタンに表示する文字列を変更することができます。
オプションボタンを追加したら最初にCaptionを変更するのがおすすめです!

プロパティ3:Font

Fontでは、フォントの見た目を変えることができます。
フォントサイズ・フォントタイプ・フォントカラーなどフォントに関しての設定を変えたい場合に便利です。

Font項目の右側にある「」ボタンを押すと、設定画面が出てきます。

オプションボタンの値をVBAで使う方法

オプションボタンの選択状態をVBAから取得、変更する方法は次の通りです。

取得方法:

変更方法:

選択している場合はTrue、していない場合はFalseが返ってきます。

ただ、VBAで処理を書くときは「選択したかどうか」ではなく、選択した「オプションボタンの値」を使いたいですよね。

そのため、次の流れで選択したオプションボタンの値を調べるのがおすすめです!


1. 「オブジェクト名.Value」で選択しているオプションボタンを調べる
2. 「オブジェクト名.Caption」で選択したオプションボタンの値を取得する

具体的なサンプルを用意しました。

サンプル:

オブジェクト名が「OptionButton1」「OptionButton2」の2つのオプションボタンの選択状態を「OptionButton1_result」「OptionButton2_result」にそれぞれセットした後、IF文で選択している状態を判定して、「selectOpbValue」に選択したオプションボタンの値をセットする方法です。

この方法を使えば、簡単に選択したオプションボタンの値を取得することができます。

サンプルコード

次に、サンプルコードをもとに、具体的な使い方を解説します。

画面に性別の「男性」「女性」を選択するオプションボタンを用意し、「選択した性別を表示」ボタンクリックで選択した性別がメッセージに表示されるサンプルを用意しました。

※画面のオブジェクト名は、それぞれ以下のようになっています


・男性:opbMan
・女性:opbWoman
・ボタン:btnDispGenderName

サンプルコード:

実行結果:

このように、簡単にオプションボタンで選択した値を使うことができます。

複数の選択肢から選んだ値を使いたい場合は、とても便利ですね。

合わせて覚えておくと便利なコントロールの使い方

ここまでオプションボタンの使い方を解説してきましたが、ユーザーフォームには他にも便利なコントロールがたくさんあります。

おすすめのコントロールについて以下で詳しく解説しているので、気になる方は見てみてくださいね!


【ExcelVBA入門】ユーザフォームでチェックボックスを使う方法とは
更新日 : 2018年8月8日

【VBA入門】コンボボックスの使い方(リストの初期化、値の取得)
更新日 : 2019年4月22日

まとめ

今回は、オプションボタンの概要・使い方について解説しました。

ちょっとしたアンケートから、システム開発までオプションボタンはよく使います。

使い方も簡単なので、ぜひ使ってみてくださいね!

LINEで送る
Pocket

最短でエンジニアを目指すなら侍エンジニア塾

cta_under_bnr

侍エンジニア塾は業界で初めてマンツーマンレッスンを始めたプログラミングスクールです。これまでの指導実績は16,000名を超え、未経験から数多くのエンジニアを輩出しています。

あなたの目的に合わせてカリキュラムを作成し、現役エンジニア講師が専属であなたの学習をサポートするため効率よく学習を進めることができますよ。

無理な勧誘などは一切ありません。まずは無料体験レッスンを受講ください。

無料体験レッスンの詳細はこちら

書いた人

Sanshiro Wakizaka

Sanshiro Wakizaka

フリーランスエンジニア兼ライターのワキザカ サンシロウです。
ExcelVBAの自動化ツール開発、WEB開発をメインにエンジニア業務をこなしつつ、サムライエンジニアにてライター業務をしております。

プログラミングをこれからやってみたい方に向けて、ためになる記事を全力で書いていきますので宜しくお願い致します!

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説