
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も見ています
-
エクセル VBA チェックボックスの制限について
Excel(エクセル)
-
エクセルのチェックボックスで3つあるうち1つチェック入れたら自動的に残りにチェック出来ないようにするには
Excel(エクセル)
-
選択したセル範囲に入っているチェックボックスを全てOFFにしたい
Excel(エクセル)
-
-
4
エクセルVBA オプションボタンのチェックを外したい
Excel(エクセル)
-
5
エクセルVBAでマルチページの切り替え方法の件で
Excel(エクセル)
-
6
エクセルで、チェックボックスにチェックをいれた行のデータのみを別シートに転記するには
Excel(エクセル)
-
7
2つのマクロでチェックボックスが連動しません
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
CommandButtonのCaptionを変化...
-
OSXでC言語
-
C#プログラムで、ボタンをショ...
-
アイコンとボタンの違い
-
ユーザーフォームに別シートか...
-
プロシージャからイベントをコ...
-
ボタンをマウスで押し続けたと...
-
C#でSendInputを使ったサンプル...
-
チェックボックスで指定出来る...
-
Excel VBA Application.caller...
-
vb.net タイマーに引数を渡す
-
コマンドボタンやイメージにマ...
-
+ボタンの名称は?
-
ボタンの表示を改行表示したい
-
VBA ユーザーフォームラベルキ...
-
tkinterでボタンの幅をそろえたい
-
3つのオプションボタンの場所...
-
Delphiにて、呼び元の情報を(...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
ユーザーフォームに別シートか...
-
セルをマクロのボタンにしたい。
-
VBA CommandButtonの文字ずれ
-
Excel VBA Application.caller...
-
C#プログラムで、ボタンをショ...
-
フォームの再読み込み
-
コマンドボタンやイメージにマ...
-
[VB.net] ボタン(Flat)のEnable...
-
Excel マクロ 閉じるボタン
-
VBAで多数のプログラムを一つの...
-
ボタンをマウスで押し続けたと...
-
VB.net でトグルボタンを実現し...
-
プロシージャからイベントをコ...
-
アイコンとボタンの違い
-
VBAのボタンの位置が変わって困...
-
閉じると「+」になり開くと「-...
-
[Excel VBA]コマンドボタンの入...
-
ASP.Net ラベルの内容をすぐに...
おすすめ情報