[[20170812175049]] 『選択されたチェックボックス別に異なるイベントを』(テル) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『選択されたチェックボックス別に異なるイベントをする』(テル)

ユーザーフォームで確認テストを作成
【状況説明】
・ユーザーフォーム上に3つのコントロールを配置しています。
・フレーム×1つ。チャックボタン×3つ(フレーム内に配置)。コマンドボタン×1つ
【目標動作】
・チャックボタンをクリック後、コマンドボタンを押します。
・正しいチャックボタンがクリックされている場合、フレームの枠色が赤に変わります。
・誤ったチャックボタンがクリックされている場合、フレームの枠色が白に変わります。
・枠色の変化で問題の成否を表示します。

どなたかご指導お願いします。

< 使用 Excel:Excel2016、使用 OS:Windows10 >


 チャックボタンというのは見たことがないのでよくわかりませんが、
 排他的な処理をしたいのなら、オプションボタンの方がいいような
 気がします。
 Frame内ですと、一つのオプションボタンをクリックしてTrueにする
 と、他のオプションボタンがFalseになります。
(カリーニン) 2017/08/12(土) 18:25

 参考HPです。

https://support.office.com/ja-jp/article/%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0%E3%80%81%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0-%E3%82%B3%E3%83%B3%E3%83%88%E3%83%AD%E3%83%BC%E3%83%AB%E3%80%81%E3%81%8A%E3%82%88%E3%81%B3%E3%83%AF%E3%83%BC%E3%82%AF%E3%82%B7%E3%83%BC%E3%83%88%E4%B8%8A%E3%81%AE-ActiveX-%E3%82%B3%E3%83%B3%E3%83%88%E3%83%AD%E3%83%BC%E3%83%AB%E3%81%AE%E6%A6%82%E8%A6%81-15ba7e28-8d7f-42ab-9470-ffb9ab94e7c2
(カリーニン) 2017/08/12(土) 18:31


 コントロールのプロパティを制御するのは、当該コントロール上で右クリックしたら
 メニューの中に「プロパティ」がありますので、制御したいプロパティの値を設定したい
 値に変えてみてください。
 その値をVBAで与えるようにします。
(カリーニン) 2017/08/12(土) 18:47

申し訳ございません。チャックボタンではなく、チェックボックスです。
詳細説明:チェックボックスで選択肢を3つ配置します。
               3つの選択肢の内、正しい項目を選んだ場合のみ、フレームの枠色を白に変更する。
               誤ったチェックボックスが選択されている場合、フレームの枠色を赤に変更する。
・オプションボタンは選択肢が1つの場合には有効ですが、今回のように選択肢を複数配置したい場合には、どのようなボタンが
 最適でしょうか?
よろしくお願いします。
(テル) 2017/08/12(土) 19:19

テルさんこんばんわ
下のコードでは正しい項目が複数(1と3)と仮定して組んでます。
単純にIF文では駄目なのでしょうか?

Private Sub CommandButton1_Click()
If CheckBox1 = True And CheckBox2 = False And CheckBox3 = True Then
Frame1.BorderColor = &HFFFFFF '白
Else
Frame1.BorderColor = &HFF& '赤
End If
End Sub
(yasshi) 2017/08/12(土) 20:46


 >・オプションボタンは選択肢が1つの場合には有効ですが、今回のように選択肢を複数配置したい場合には、どのようなボタンが
 >最適でしょうか?

 ちょっと意味がよくわかりません。
 選択肢は複数でも正しい選択肢は一つなんですよね?
 そうでしたら、チェックボックスよりオプションボタンの方が適しています。
(カリーニン) 2017/08/12(土) 22:18

目標とするマクロができました。
ご指導ありがとうございました。
(テル) 2017/08/12(土) 23:37

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.