ACCESS オプションボタンを使って値を入力する方法

オプションボタンを使って値を入力する方法

ACCESSで複数の選択肢から一つを選択するような入力方法として、オプションボタンを使用することが可能です。

オプションボタンを使用する際の作成方法や、オプションボタンの入力値をVBAで取得する方法についてご紹介します。


こんにちは。
はこにわガジェット (@hakoniwagadget) です。

ACCESSを使った売上管理、顧客管理などのデータベース開発を行っています。
ACCESSは使いこなすために少しスキルが必要なものの、うまく活用すればExcelよりも業務の効率化が図れます。
この記事ではACCESSの基本的な使い方をご紹介していきます。

オプションボタンとは

オプションボタンの作成方法

オプションボタンはフォームに設置します。

まずはフォームをデザインビューで開きましょう。

フォームのデザインビュー

メニューから「フォームデザイン」を選択すると、フォームに設置できるオブジェクトが表示されます。

オプションボタンを設置する際に使用するのは、一番右にあるオプションボタンと、XYZと書かれているオプショングループです。

オプションボタンは単独の項目でTrue / Falseを判定する場合に使用し、オプショングループは複数の項目から一つを選択する場合に使用します。

実務ではオプショングループを使用するほうが多いので、以降はオプショングループの作成方法をご説明します。

オプショングループを選択すると、オプショングループウィザードが起動します。

オプショングループのラベル名を聞かれますので、設定します。

次に、既定値(最初から選択されている値)を聞かれますので設定します。

次に、オプションに割り当てる値を設定します。

オプショングループでは、ユーザーはラベルを見て選択しますが、ACCESS内ではどのラベルが選択されたかを数値で判定します。

そのため、ここで割り当てる値が実際にはACCESS内で利用されることになります。

次に、オプショングループの表示方法を選択します。

最後に名前を付けて完成です。

以下の通り、オプショングループが作成できました。

ここで注意点が一つあります。

この時点では、オプショングループの名前がデフォルト値になっています。

のちにVBAから呼び出すことを想定し、オプショングループの名前をわかりやすいものに変更しておきましょう。

オプションボタンの入力値をVBAで取得する方法

最後に、オプションボタンで入力された値をVBAで取得する方法をご紹介します。

オプションボタンの入力値によって、動作を条件分岐させたい場合に有効です。

今回は、「表示」ボタンを作成しました。

このボタンに、オプションボタンの値を表示するVBAを設定しましょう。

デザインビューで表示ボタンを選択し、プロパティシートからクリック時イベントにイベントプロシージャを設定します。

まずは、下記のプロシージャを設定してみました。


Private Sub 表示_ボタン_Click()

    MsgBox Me!果物選択

End Sub

MsgBox関数でメッセージを表示するプロシージャです。

Me!果物選択と記載されている部分が、フォームに設定したオプショングループの値です。

オプショングループ名を指定することで、選択されている値を取得することが可能です。

実際に、フォームビューで表示ボタンを押してみます。

このように、選択したオプションボタンに対応する値が表示されました。

さらに、オプションボタンの値に応じた条件分岐を使って少し複雑にしてみましょう。


Private Sub 表示_ボタン_Click()

If Me!果物選択 = 1 Then

    MsgBox "りんご"

ElseIf Me!果物選択 = 2 Then

    MsgBox "みかん"

ElseIf Me!果物選択 = 3 Then

    MsgBox "バナナ"
    
End If

End Sub

果物選択オプショングループの値に応じて、表示するメッセージを変えています。

実行してみましょう。

条件分岐によって、選択したオプションボタンのラベルと同じ文字が表示されました。

このように、オプションボタンの入力値をVBAで取得すれば、様々な条件分岐制御が可能です。

以上、オプションボタンを使って値を入力する方法でした。


ACCESSを使いこなせば、業務の効率化や自動化が実現できます。
しかし、自分でACCESSを学ぶには時間がない、難しそうで不安、という方も多いでしょう。

そんな時は、ACCESS開発歴20年以上、過去に100以上のACCESSデータベースを開発してきた私(@hakoniwagadget)にお任せください。

ACCESSの新規開発、既存のACCESSの修正、ACCESSの操作レッスンなど様々なサービスをご提供しています。
ご興味のある方は下記のサービス一覧をご覧ください。

サービス一覧

最後までお読みいただき、ありがとうございました。