• 締切済み

Excel2007 VBA シート上のオプションボタン

Excel2007のVBAで質問があります。 シート上に複数(90個)のオプションボタンが設置しているシートが有りコマンドボタンが押されたときに どのオプションボタンが選択されているか判断したいのですが、 IF文で一つ一つ下記のように書くと個数が多いたムダに長いロジックになります。 If Worksheets("Sheet1").OptionButton1.Value Then chk_f = 1 end If If Worksheets("Sheet1").OptionButton2.Value Then chk_f = 2 end If         :         : ユーザーフォームに設置しているオプションボタンは、下記のようにFor文で回せるのは判っているのですが、 For i = 1 To 90 If Me.Controls("OptionButton" & i).Value Then chk_f = i exit for End If Next シート上のオプションボタンでも同様の事は可能でしょうか? もしなければオプションボタンとセルをリンクさせてそのセルをFor文で回して確認していく方法が出来るかなと考えています。

みんなの回答

  • kybo
  • ベストアンサー率53% (349/647)
回答No.1

For i = 1 To 90 If ActiveSheet.OLEObjects("OptionButton" & i).Object.Value Then chk_f = i Exit For End If Next でどうでしょうか?

すると、全ての回答が全文表示されます。

関連するQ&A