- ベストアンサー
EXCELでチェックボックスの一括オンオフ
- アンケート作成をしており、設問毎にチェックボックスで複数選択できるようにしていますが、1つの設問にチェックボックスが8~10等多くあるため、設問毎にチェックボックスの一括オンオフができるようにしたいのです。
- 現在、ある設問の全てのチェックボックスにレが入るようになっていますが、オンオフする方法がわかりません。チェック11のボックスで、一括オンオフができるようにする方法を教えてください。
- Excelでアンケートの設問毎に複数のチェックボックスを設定していますが、一括でオンオフできるようにしたいです。現在は特定の設問の全てのチェックボックスにレが入りますが、ボックスをオンオフする方法がわかりません。どうすれば実現できるでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
あなたのシートで、activesheet.checkboxes(1)やらactivesheet.checkboxes(2)やらactivesheet.checkboxes(3)やらが、具体的にどのチェックボックスの事になっているのか、キチンと正しくあなたご自身がまず把握してから、作業をしてください。 まず練習として、まっさらのシートにフォームのチェックボックスを3個配置します 最初のチェックボックスにマクロの登録を行い、 Sub チェック1_Click() activesheet.checkboxes(array(2,3)).value = activesheet.checkboxes(1).value end sub と登録します。
その他の回答 (2)
- xls88
- ベストアンサー率56% (669/1189)
>No.1 この回答への補足 なるほど、そういうことでしたか。 No.2 keithinさんの回答を拝見して気がつきました。 keithinさんのコードが質問内容を正確に反映されていると思います。 勉強になりました。
お礼
ご回答頂き、誠にありがとうございます。 言葉足らずで、申しの訳ありませんでした。 フォームコントロールチェックボックスです。 お陰様で、無事にアンケートフォームを作成することができました。 次回より、回答者側の立場も考えて、質問したいと思います。 初心者で、どのように質問するべきか、わかりませんでした。 また、次回もどうぞよろしくお願い致します。 本当にありがとうございました。
- xls88
- ベストアンサー率56% (669/1189)
フォームコントロールなら ValueプロパティをFalseにすればいけると思います。 ActiveSheet.CheckBoxes(Array(1, 2, 3)).Value = False シート上の全てのチェックボックスを対象にするなら ActiveSheet.CheckBoxes.Value = False アクティブXコントロールの場合は一括ではできないようです。 総当たりすることになります。 Dim myObj As OLEObject For Each myObj In ActiveSheet.OLEObjects If myObj.progID = "Forms.CheckBox.1" Then myObj.Object.Value = False End If Next
お礼
xls88さん 何度もご回答頂き、誠にありがとうございます。 ありがとうポイント10ポイントを付与させていただこうと思いましたが、今はこのポイントはないのでしょうか。。 解りやすくご回答頂きましたのに、何もお礼ができず、申し訳ありません。 また次回、どうぞよろしくお願い致します!!
補足
xls88さん、早速にご回答頂き、どうもありがとうございます。 VBAについて、初心者なので再度お伺いします。 記述は、次のようになるのでしょうか? Sub チェック1_Click() ActiveSheet.CheckBoxes(Array(2, 3)).Value = True ActiveSheet.CheckBoxes(Array(2, 3)).Value = False End Sub これだと、うまくいきません。 チェックボックス1をクリックするたびに、レ点が指定したチェックボックス全てにオンオフになるように記述するにはどうすればいいでしょうか? どうぞ、ご回答の程、よろしくお願い致します。
お礼
ご回答頂き、誠にありがとうございます。 言葉足らずで、申しの訳ありませんでした。 フォームコントロールチェックボックスです。 お陰様で、無事にアンケートフォームを作成することができました。 次回より、回答者側の立場も考えて、質問したいと思います。 初心者で、どのように質問するべきか、わかりませんでした。 また、次回もどうぞよろしくお願い致します。 本当にありがとうございました。