Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


73984 / 76732 ←次へ | 前へ→

【7219】Re:オプションボタン
回答  ichinose  - 03/8/27(水) 8:06 -

引用なし
パスワード
   ▼鼻毛カッター さん:
おはようございます。HNがとてもユニークで・・・。

>教えていただきたいのですがよろしいでしょうか?
>オプションボタンだけを使い、シート上にある項目に丸をつけようと思っているのですが、なかなか上手くいきません。
シートに貼り付けるオプションボタンということですか?
そうだとしたら、「コントロールツールボックス」のそれと「フォーム」と二つあるので
どちらなのか明記してくださいね!!
「コントロールツールボックス」にあるオプションボタンだと思って記述します。

>例をあげると、ボタン1の時は、アに丸をつけ、ボタン2の時は、イに丸をつけるというものです。ここまではできたのですが、アに丸をつけてから、イに丸をつけると、アについている丸が消えてくれません。片方に丸ついているときは、片方には丸がついていないようにしたいのですが、どのようにすればよろしいのでしょうか?
>わかる方がいらしたら、よろしくお願い致します。
例えば、あるシート上にオプションボタンを3つ配置します(OptionButton1〜OptionButton3)。
OptionButton1が選択されたら、セルA1に○、
OptionButton2が選択されたら、セルA2に○、
OptionButton3が選択されたら、セルA3に○。
というような仕様を考えると、
当該シートに
'=========================================
Private Sub OptionButton1_Change()
  Call set_○(1)
End Sub
'=========================================
Private Sub OptionButton2_Change()
  Call set_○(2)
End Sub
'=========================================
Private Sub OptionButton3_Change()
  Call set_○(3)
End Sub
'=========================================
Sub set_○(id As Long)
  Range("a1:a3").Value = ""
  Cells(id, 1).Value = "○"
End Sub
なんてすると、○がセルA1からA3を移動するように見えます。

手法としては、例のように一旦○が動く範囲を初期化してしまう方法と
元の位置を示すポインタを持つ方法がありますが、
オプションボタンの数がすこぶる多い場合は、
後者の手法をとらなければならないかもしれません。
これで応用できますか?
2 hits

【7217】オプションボタン 鼻毛カッター 03/8/27(水) 0:34 質問
【7219】Re:オプションボタン ichinose 03/8/27(水) 8:06 回答
【7224】Re:オプションボタン 鼻毛カッター 03/8/27(水) 9:37 発言
【7226】Re:オプションボタン INA 03/8/27(水) 10:25 回答
【7228】Re:オプションボタン ichinose 03/8/27(水) 10:39 回答
【7254】Re:オプションボタン 鼻毛カッター 03/8/27(水) 19:59 お礼

73984 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free