よねさんのWordとExcelの小部屋|Excel2007(エクセル2007)基本講座の総目次|ActiveXコントロールの例(ワークシートに配置する)
- ワークシートにActiveXコントロールを配置して使用する例です。
- ActiveXコントロールを使ってデータ入力の例です。
- オプションボタン,チェックボックス,スピンボタン,コンボボックス,リストボックス,コマンドボタンを使った例です。
- 各入力項目を選択し、コマンドボタンでデータをシートに入力する仕組みを作成してみます。
- [開発]タブの[コントロール]グループにある[挿入]からActiveXコントロールを選択し、ワークシート上に配置します。
- 配置して設定をした後の状態です。
- OptionButton1と2のプロパティをVBEのプロパティで設定します。
- BackColorの設定例です。
- Captionに「男性」,GroupNameに「Group1」,LinkedCellに「B3」と設定しました。
- GroupNameは同一のグループとするOptionButton1をクリックして選択後、[Shift]キーを押しながらOptionButton2を選択することで同時に選択できます。
VBEのVBEのプロパティでGroupNameを設定するとまとめて設定できます。
- OptionButton2も同様にCaptionに「女性」,GroupNameに「Group1」,LinkedCellに「B4」と設定します。
- オプションボタン1〜2の状態をA3セルに表示するため、A3セルに=IF(B3=TRUE,"男性",IF(B4=TRUE,"女性","")) と数式を入力します。
- OptionButton3〜5も同様に配置して設定をします。
- OptionButton3は同様にCaptionに「10〜29歳」,GroupNameに「Group2」,LinkedCellに「B5」と設定します。
- OptionButton4は同様にCaptionに「30〜49歳」,GroupNameに「Group2」,LinkedCellに「B6」と設定します。
- OptionButton5は同様にCaptionに「50歳以上」,GroupNameに「Group2」,LinkedCellに「B7」と設定します。
- オプションボタン3〜5の状態をA6セルに表示するため、A6セルに=IF(B5=TRUE,"10〜29歳",IF(B6=TRUE,"30〜49歳",IF(B7=TRUE,"50歳以上",""))) と数式を入力します。
- [開発]タブの[コントロール]グループにある[挿入]から[チェックボックス]を選択し、ワークシート上に配置します。
- チェックボックスのプロパティ
- チェックボックスの状態をA8セルに表示するため、A8セルに=IF(B8,"済","未") と入力します。
- スピンボタンのプロパティ
- 月数を入力したいので、Maxを「12」、Minを「1」に設定します。
- LinkedCellは「D11」とします。
- スピンボタンでは1〜12の数値が変化できるだけなので、LinkedCellのD11は表示形式をユーザー定義で「0"月"」とします。
- D11セルの値は1〜12の数値なので、A11では=D11&"月" としています。
- コンボボックスで選択するデータをシートのH13:H20に入力します。
- コンボボックスのプロパティを設定します。
- LinkedCellを「A13」、ListFillRangeを「H13:H20」とします。
- リストボックスで選択するデータはシートのH13:H20に入力した値を利用します。
- リストボックスのプロパティを設定します。
- LinkedCellを「A17」、ListFillRangeを「H13:H20」とします。
- コマンドボタンを配置し、Captionを「入 力」とします。
- 今までの設定で各コントロールで選択した結果はA3〜A17に表示されます。
- これらの値をSheet2へ入力するコードをSheet3(コントロールを配置したシート)モジュールへ記述します。
- 表示される値は見た目が悪いのでシートと同じ色(白色)にして見えないようにします。
また、コマンドを配置したセル範囲のセルを塗りつぶしてみます。
- 完成です。
- コマンドボタンを押すとSheet2へ追記されます。
よねさんのWordとExcelの小部屋|Excel2007(エクセル2007)基本講座の総目次|ActiveXコントロールの例(ワークシートに配置する)
PageViewCounter

Since2006/2/27