No.3ベストアンサー
- 回答日時:
'Index付きCheckBoxの場合の例です。
'参考にしてください。
'(1)CheckBoxをClickした時チェックの場合
Private Sub Check1_Click(Index As Integer)
Dim wCnt As Integer
'
wCnt = 0
For wI = 1 To 20
If Check1(wI).Value = 1 Then
wCnt = wCnt + 1
If wCnt > 12 Then
MsgBox "チェックMAX件数(12)を超えています。"
Check1(wI).Value = 0
'抜ける
Exit Sub
End If
End If
Next
End Sub
'(2)決定ボタンを押した時チェックの場合
Private Sub Command1_Click()
Dim wI As Integer
Dim wCnt As Integer
'
wCnt = 0
For wI = 1 To 20
If Check1(wI).Value = 1 Then
wCnt = wCnt + 1
End If
Next
If wCnt > 12 Then
MsgBox "チェックMAX件数(12)を超えています。"
'抜ける
Exit Sub
End If
'次の処理へ進む
'///////////////
End Sub
(1)の方法をお勧めします。
迅速かつ的確な回答を頂きどうもありがとうございました。
Private Sub CheckBox1_Click()
Dim wCnt As Integer 'チェックの数を格納
Dim m As Integer
wCnt = 0
For m = 1 To 23
If Controls("CheckBox" & m).Value = "True" Then
wCnt = wCnt + 1
If wCnt > 12 Then
MsgBox "チェックMAX件数(12)を超えています。"
Controls("CheckBox" & 1).Value = "False"
'抜ける
Exit Sub
End If
End If
Next
End Sub
Private Sub CheckBox2_Click()
Dim wCnt As Integer 'チェックの数を格納
Dim m As Integer
wCnt = 0
For m = 1 To 23
If Controls("CheckBox" & m).Value = "True" Then
wCnt = wCnt + 1
If wCnt > 12 Then
MsgBox "チェックMAX件数(12)を超えています。"
Controls("CheckBox" & 2).Value = "False"
'抜ける
Exit Sub
End If
End If
Next
End Sub
・・・
といった感じで全てのチェックボックスに対しプログラミングする事で、所望の動作をさせる事が出来ました。本当にどうもありがとうございます。
No.1
- 回答日時:
VB自体はよく分からないので明確に回答はできませんが、
チェックボックスはボタンの一種なので選択すると
onclick イベントが発生するはずです。
そこで、チェックされている数を調べてチェックされている数が
12個以上ならその押したチェックボックスのチェックを外すことで
対応できそうです。
でも、複雑なことやり過ぎると不具合の原因にもなりますし、
無難な方法で対応した方がいいと思いますよ。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- Excel(エクセル) Excelにの以下の設定方法について教えてください! C列にデータ入力の設定をしています。(出、入を 3 2022/06/22 01:33
- Excel(エクセル) excelで可視セルのみ置換 3 2022/08/04 11:02
- JavaScript セレクトを全て選択されていないと、文字によるエラーメッセージを表示させるコードを調べています 2 2023/06/22 15:48
- Excel(エクセル) たくさんあるフォームコントロールを効率よく確認するには 1 2022/12/24 12:27
- iPad iPadでWebサイトで選択した文から「ユーザー辞書」を押しても登録画面が出ない 1 2022/08/11 19:56
- Excel(エクセル) EXCELピボットテーブル(複数アイテム) 1 2023/04/27 12:15
- Access(アクセス) チェックボックスにチェックが入った後の挙動 1 2022/08/21 12:39
- 数学 確率の質問です。Cに関してです。 どうしてCが決まると片方が決まるのでしょうか? 例えば、異なる8個 3 2022/06/27 10:47
- X(旧Twitter) Twitterで、「センシティブな内容」を表示する設定の仕方について。 「表示出来ません」のツイート 1 2022/09/28 01:53
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
チェックボックスの択一選択方法教えてください。
Windows 95・98
-
エクセルVBAで複数選択できるように設定したリストボックスの、選択され
Visual Basic(VBA)
-
エクセルのチェックボックスを保護対象から外すには
Windows Vista・XP
-
-
4
エクセルのチェックボックスで3つあるうち1つチェック入れたら自動的に残りにチェック出来ないようにするには
Excel(エクセル)
-
5
エクセル VBA チェックボックスの制限について
Excel(エクセル)
-
6
変数をコントロール型で使用する方法
Visual Basic(VBA)
-
7
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
8
エクセル・VBA CheckBoxのオブジェクト名に変数を使うことは可能でしょうか?
Excel(エクセル)
-
9
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
10
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
11
Excelで重複データの件数ではなく、何番目かを求める方法
Excel(エクセル)
-
12
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
13
Excelのシートを保護してオプションボタンの選択のみ可能にしたい
Excel(エクセル)
-
14
エクセルVBAでフォームのListboxをスクロールするには?
その他(Microsoft Office)
-
15
クエリで出来た表にチェックボックスを追加する
その他(Microsoft Office)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
フォームの再読み込み
-
VBAでオプションボタンによって...
-
ユーザーフォームに別シートか...
-
VBAのボタンの位置が変わって困...
-
セルをマクロのボタンにしたい。
-
ボタンにセットフォーカスする...
-
Access VBA でデータペーストを...
-
C♯初心者で、四則演算の電卓を...
-
他のアプリケーションとの連携
-
ユーザーフォーム中の入力順番...
-
バックスペース機能の作り方
-
回数のカウント
-
VBAで多数のプログラムを一つの...
-
TextBoxでEnterキーを押すと、...
-
CommandButtonのCaptionを変化...
-
VB.net でトグルボタンを実現し...
-
3つのオプションボタンの場所...
-
VBA CommandButtonの文字ずれ
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
ユーザーフォームに別シートか...
-
VBA CommandButtonの文字ずれ
-
フォームの再読み込み
-
セルをマクロのボタンにしたい。
-
Excel VBA Application.caller...
-
コマンドボタンやイメージにマ...
-
プロシージャからイベントをコ...
-
Access VBA でデータペーストを...
-
VBAのボタンの位置が変わって困...
-
閉じると「+」になり開くと「-...
-
[Excel VBA]コマンドボタンの入...
-
ASP.Net ラベルの内容をすぐに...
-
Excel マクロ 閉じるボタン
-
ボタン
-
CommandButtonのCaptionを変化...
-
VB.NETでマウスクリックイベン...
-
ボタンの枠線の様なものを消したい
-
C#で動的に作ったtextboxを消す。
おすすめ情報