- ベストアンサー
フォームコントロールのチェック
sheet1にフォームコントロールに有るチェック(□の中にレ)でチェックを付けるように作ってます。再度クリックしたらチェックを消せますが、これをマクロで消すようにするにはどのように記述したら良いでしょうか。よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>チェックボックスの名前とは沢山作っている各々の名前でしょうか。 当然です。 1ユーザーフォーム上に多数のチェックボックスががあっても、1つずつ、値をFALSEに設定して回らないとなりません。オブジェクトは違いますがCells.Clear のような調子には行きません。VBAにはコントロール配列がありません。ですから配列の要素番号をFor Next で繰りまわすようなコードは書けません。 ただし便法で(擬似コントロール配列) Private Sub UserForm_Click() For i = 1 To 4 Controls("Checkbox" & i).Value = True Next End Sub 当然チェックマークを消す場合は=Falseです・ チェックボックスの名前が同じで番号が続いていると書きやすい。 似た質問か http://oshiete1.goo.ne.jp/kotaeru.php3?q=1492714
その他の回答 (1)
- uturogi_k
- ベストアンサー率37% (6/16)
以下の方式で可能かと思います。 チェックボックスの名前がCheckBox1の場合であった場合 例 Sheet1.CheckBox1.Value = False → 結果:チェックが外れます Sheet1.CheckBox1.Value = True → 結果:チェックが付与されます ご参考になれば幸いです。
補足
ありがとうございます、具体的に書きますので再度ご教示ください。 ブック名は 活動 です。シート名は 活動記録 です。 活動記録 のトートにいろいろな名前で沢山作っています。 チェックボックスの名前とは沢山作っている各々の名前でしょうか。 よろしくお願いします。
補足
ありがとうございます。 Controlswでエラーになります。 再度ご教示お願いします。