
No.2ベストアンサー
- 回答日時:
CheckBoxの名前を、オブジェクト変数に入れるとループ関数が使えます
--------------------------------
Private Sub CommandButton1_Click()
Dim ckbx(5) As Object
Set ckbx(1) = CheckBox1
Set ckbx(2) = CheckBox2
Set ckbx(3) = CheckBox3
Set ckbx(4) = CheckBox4
Set ckbx(5) = CheckBox5
For i = 1 To 5
If ckbx(i).Value Then
nx = nx + 1
End If
Next
If nx > 2 Then
MsgBox "チェック、多すぎ"
For i = 1 To 5
ckbx(i).Value = False
Next
Else
' 2個以下の場合の処理
MsgBox "2個以下"
End If
End Sub
No.3
- 回答日時:
>チェックボックス5個のうち
(1)フォームに貼り付ける
(2)シートに貼り付ける
で差があるのだ。初心者で気がついてないのかもしれないが、質問に書いてない場合が多い。
ーー
シート(下記ではSheet3)上に、の場合
Private Sub CommandButton1_Click()
For Each chb In Worksheets("Sheet3").OLEObjects
MsgBox chb.Name
MsgBox chb.progID
If chb.progID = "Forms.CheckBox.1" And chb.Object.Value = True Then n = n + 1
Next
MsgBox n
If n > 2 Then MsgBox "エラー"
End Sub
ーー
Msgbox は納得したら削除のこと(エラー表示の行を除き)。
この回答へのお礼
お礼日時:2009/11/18 00:39
>チェックボックス5個のうち
(1)フォームに貼り付ける
で行っております。
シート上にも貼り付けれる方法は知りませんでした。
ご丁寧にありがとうございます。
シート上に貼り付ける方法を調べて実行してみようと思います。
ありがとうございました。
No.1
- 回答日時:
考え方としては
5つのチェックボックスを順に調べていき
チェックが入っていれば用意した変数を
インクリメント(カウントを増やす)し
最終的にその数が2以上ならばやり直させる
というコードを書けばいいと思いますが、
おっしゃることが一つしか選択させないものを
作りたいというだけなら
チェックボックスではなく
ラジオボタンを使ったほうが効率がいいと思います。
この回答へのお礼
お礼日時:2009/11/18 00:46
チェックを1つではなく
”2つだけ”or”2つ以下”
してもらいたいのです。
インクリメントについて勉強してみます。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
LibreOffice Clalc(またはエク...
-
【マクロ】excelファイルを開く...
-
【関数】3つのセルの中で最新...
-
【マクロ】数式を入力したい。...
-
Office2021のエクセルで米国株...
-
エクセルのリストについて
-
【マクロ】【相談】Excelブック...
-
【マクロ】元データと同じお客...
-
【画像あり】オートフィルター...
-
エクセルの関数について
-
【マクロ】左のブックと右のブ...
-
他のシートの検索
-
【マクロ】実行時エラー '424':...
-
エクセルのVBAで集計をしたい
-
vba テキストボックスとリフト...
-
【マクロ】【配列】3つのシー...
-
【関数】=EXACT(a1,b1) a1とb1...
-
【マクロ画像あり】❶1つの条件...
-
エクセルの複雑なシフト表から...
-
【マクロ】変数に入れるコード...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル VBA チェックボック...
-
内部サーバーエラーについて
-
rarファイルで解凍エラーが発生
-
windows10を再インストールし...
-
ビジネスメールの敬称
-
Googleフォームを回答したか確...
-
エクセルVBA テキストボックス...
-
お問い合わせフォームから送信...
-
初歩的な事だと思います。 Sub...
-
テキストボックスの番号を使っ...
-
数字以外の入力をエラーにする...
-
フォームを再送信しますか?
-
EXCEL VBA で指定した範囲に入...
-
Excel-VBAでInputBox+Pulldown...
-
教えて!全角文字「μ」の半角
-
DATE型変数を初期化する方法
-
VBAでInputBoxの再入力をさせる...
-
入力フォームの値をQRコードで...
-
アクセスのマクロ
-
エディットボックスの入力制限...
おすすめ情報