質問: コマンドボタン よくわからないのですが エクセルのコントロールツールボックスのコマンドボタンだとイベントはたくさんあるけど、 フォームのコマンドボタンだとクリックボタンしかないのですか? フォームのコントロールはコントロールツールボックスの劣化版と言う感じですか? 添付画像の事です。
回答: フォームとアクティブxコントロールは、全く出自の異なる別体系のツールです。 フォームは基本的にエクセルの図形です。 オートシェイプの図形に右クリックして「マクロの登録」をするのと、同じです。つまりフォームは「登録したマクロを実行するボタン形態の図形」です。 ポイントの一つは、これが「エクセル純正の図形」だということです。 フォームに登録するマクロは、基本的にエクセルで書かれた通常のマクロです。同じマクロを複数のフォームのボタンに共有して登録するといった使い方も可能です。 アクティブxコントロールは、エクセル純正の部品ではありません。ワードとか他のオフィスソフトで共通に利用できるように、エクセルとは別に作られたモノです。 このため、ご覧になったように ・いろんなイベントが用意されています ・基本的にどのソフトでも(ソフトに依存しない範囲で)同じプログラムが走ります といった(高機能な)特徴があります。 一方でエクセル純正ではない事から ●バグ等によって不具合が起こります ●アクティブxコントロールの書式に則ってマクロを書く必要があります ●複数のコントロールには、基本的にそれぞれ一つずつマクロを用意しなければいけません といった制約もあります。