全てのオプションボタンが未選択の時にエラーを防ぐVBA対処法

エクセル検索
HOMEUserForm印刷画面ファイル図形
日付・時刻データセル関数VBA関数

マクロを組み込んだエクセルを他のスタッフと共有して使っている時に、誤ってユーザーフォームに配置した「オプションボタン」を選択しないで次に進まれてしまい、意図しないエラーに遭遇したことありませんか?

このような押し忘れを防ぐ為には、選択漏れがあった場合にはメッセージを表示させて次に進めないようにすれば解決できますので、VBAコードをご紹介します。

IfステートメントとMsgBoxだけで解決

オプションボタンは2つ以上配置して、その中から1つを必ず選択する為のコントロールパーツです。

よく見かけるのは、性別などを選択する時に下記のように選べるようになっています。

オプションボタン

オプションボタンの特徴は、上の図を参考にすると「男」を選択すると(True)もう一方の「女」は自動的に未選択状態(False)に設定されます。

これにより、グループ内にたくさんのオプションボタンがあっても1つしか選択できないようになっています。

オプションボタンの基本的な使い方については、内容が重複するので下記をご覧くださいませ。

オプションボタンのVBAコード

オプションボタン複数

例えば上記のように支払方法を選択させるオプションボタンが8つ配置されていて、選択を忘れてしまった場合(全てのオプションボタンが選択されていない場合)の対処法として、メッセージを表示させて次に進めないようにする方法をご紹介します。

ここでは、選択されたオプションボタンの支払方法がセルA1に表記させるようにします。

VBAコード

Private Sub CommandButton1_Click()
If OptionButton1.Value = True Then
Range(“A1”).Value = “現金”
ElseIf OptionButton2.Value = True Then
Range(“A1”).Value = “カード”
ElseIf OptionButton3.Value = True Then
Range(“A1”).Value = “PayPay”
ElseIf OptionButton4.Value = True Then
Range(“A1”).Value = “Suica”
ElseIf OptionButton5.Value = True Then
Range(“A1”).Value = “nanaco”
ElseIf OptionButton6.Value = True Then
Range(“A1”).Value = “WAON”
ElseIf OptionButton7.Value = True Then
Range(“A1”).Value = “Edy”
ElseIf OptionButton8.Value = True Then
Range(“A1”).Value = “iD”
Else
MsgBox “支払方法を選択してください”

End If
End Sub

解説
  1. コマンドボタン1がクリックされたら
  2. もしオプションボタン1が選択されたら
  3. セルA1に「現金」と記載する
  4. そうではなく、もしオプションボタン2が選択されたら
  5. セルA1に「カード」と記載する
  6. そうではなく、もしオプションボタン3が選択されたら
  7. セルA1に「PayPay」と記載する
  8. そうではなく、もしオプションボタン4が選択されたら
  9. セルA1に「Suica」と記載する
  10. そうではなく、もしオプションボタン5が選択されたら
  11. セルA1に「nanaco」と記載する
  12. そうではなく、もしオプションボタン6が選択されたら
  13. セルA1に「WAON」と記載する
  14. そうではなく、もしオプションボタン7が選択されたら
  15. セルA1に「Edy」と記載する
  16. そうではなく、もしオプションボタン8が選択されたら
  17. セルA1に「iD」と記載する
  18. そうではなかったら(選択が無かったら)
  19. メッセージで「支払方法を選択してください」と表示する
  20. Ifステートメント終了
  21. マクロ記録終了

と、このようになり「全てのオプションボタンが選択されていない場合のVBA対処法」とは、赤字で記載した2行があれば解決できるとても簡単な方法でした。

波乗りアヒル

このように選択漏れによるエラーは、よくあることなので必ず未選択時の対処をするVBAコードを付け加えることが、とても重要ですね。

関連記事

どこかにビューーン
ちょっとの工夫で往復無料の時代が来た!!

新着ページ

よく見られているページ

大容量無料ファイル転送サービス【ACデータ】 無料イラスト【イラストAC】

紅葉スポット

2024年5月11日からマイルと楽天ポイントとの相互交換提携開始!

交換レート0.5:1なので半分になってしまいますが、使い方次第で実質3倍の価値まで引き上げられる方法です。