ExcelにはフォームコントロールとActiveXコントロールの2種類があります。このページでは、この2種類のコントロールについて概要を説明します。
フォームコントロール
フォームコントロールはコマンドボタンを除いて主にセルとリンクさせて使用します。リンクされたセルにはコントロールの状態(値)が反映されます。この値を使用することで数式やグラフをフォームコントロールから操作することができます。
また、フォームコントロールは特定のイベントへ簡単にマクロを登録することが可能になっています。ワークシート上に手っ取り早くマクロ起動ボタンを作成したい場合はフォームコントロールのコマンドボタンを使用するとよいでしょう。
- ワークシート上に設置
⇒ 〇 可能 - ユーザーフォームに設置
⇒ × 不可能 - コントロールの状態(値)をVBAから取得・設定
⇒ × 不可能 - コントロールの特定イベントからマクロを実行
⇒ 〇 可能 - コントロールの変更可能なプロパティ
⇒ △ 限定的
ActiveX コントロール
ActiveX コントロールは主にユーザーフォーム上に設置するのに使用されるコントロールになります。ActiveX コントロールには広範囲なプロパティがありますので、フォームコントロールでは対応できない細かな設計要件に対応することが可能です。
- ワークシート上に設置
⇒ 〇 可能 - ユーザーフォームに設置
⇒ 〇 可能 - コントロールの状態(値)をVBAから取得・設定
⇒ 〇 可能 - コントロールの特定イベントからマクロを実行
⇒ 〇 可能 - コントロールの変更可能なプロパティ
⇒ 〇 多い
描画オブジェクトにマクロ登録
マクロは前述のコントロールから起動する以外にもオートシェイプやクリップアートなどの描画オブジェクトにマクロを登録しておくことで、描画オブジェクトをクリックしてマクロを起動することができます。フォームや ActveX コントロールのボタンデザインでは物足りない方にはおすすめです。