- ベストアンサー
エクセルVBAで
お世話になります。 エクセルVBAで簡易プログラムを作成しています。 その中でユーザーフォームを作り、チェックボックスで 6項目からどれか一つ選択する様な仕組みを作っています。 利用者が二つ以上選択(チェック)出来ない様にしたいの ですが、どの様にすれば良いでしょうか。 ちなみに今の記述は下記の様になります。 ご教授下さいます様、宜しくお願い致します。 記 If CheckBox1 = False Then If CheckBox2 = False Then If CheckBox3 = False Then If CheckBox4 = False Then If CheckBox5 = False Then If CheckBox6 = False Then MsgBox "どれか選択して下さい!" GoTo err_jmp Else: mytoki = "3年前から" End If Else: mytoki = "2年前から" End If Else: mytoki = "1年前から" End If Else: mytoki = "半年前から" End If Else: mytoki = "1週間前から" End If Else: mytoki = "昨日から" End If
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
OptionButton、6個程度ですので下記のような単純な方法が分かり易いでしょう。 CommandButttonをクリックして処理という場合 '---------------------------------------------- Private Sub CommandButton1_Click() Dim myToki As String Select Case True Case OptionButton1.Value myToki = "3年前から" Case OptionButton2.Value myToki = "2年前から" Case OptionButton3.Value myToki = "1年前から" Case OptionButton4.Value myToki = "半年前から" Case OptionButton5.Value myToki = "1週間前から" Case OptionButton6.Value myToki = "昨日から" Case Else myToki = "" End Select If myToki = "" Then MsgBox "どれか選択してください" Exit Sub End If ==ここから選択後の処理== End Sub '----------------------------------------- 以上です。
お礼
早々のご回答ありがとうございます。 大変参考になりました。 今後とも宜しくお願い致します。