• ベストアンサー
  • 困ってます

コマンドボタン

よくわからないのですが エクセルのコントロールツールボックスのコマンドボタンだとイベントはたくさんあるけど、 フォームのコマンドボタンだとクリックボタンしかないのですか? フォームのコントロールはコントロールツールボックスの劣化版と言う感じですか? 添付画像の事です。

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数373
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.1
  • keithin
  • ベストアンサー率66% (5278/7939)

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

共感・感謝の気持ちを伝えよう!

質問者からのお礼

ありがとうございました。

関連するQ&A

  • コマンドボタンで印刷ボタンを作りたい!!

    OSは、WindowsNTです。アプリケーションは、Excel97です。 以前、こちらで「フォーム」の「ボタン」で印刷ボタンを作る方法を教えて頂いたのですが、「コントロールツールボックス」の「コマンドボタン」で印刷ボタンを作る事は出来るでしょうか? 説明不足な点がありましたら補足させて頂きますので、宜しくお願い致します。

  • コマンドボタンがきかなくなる

    アクセスのフォーム上にコマンドボタンがいくつかあります。 たまにですが、コマンドボタンを押しても何も反応しなくなる時があります。 プロパティでクリック時に[イベント プロシージャ]と書いてあり、 VBE画面を見てみると ちゃんとイベントが記載してあります。 しかしフォームビューにしてそのコマンドボタンをクリックすると何も起きません。 新規にコマンドボタンを作って、vbe画面で同じイベントを張り付けると 新規のコマンドボタンのほうではクリックしてイベントが実行されます。 だから、その新規のコマンドボタンの名前を変えて使い続けるのですが、 しばらくするとほかのコマンドボタンがまたきかなくなる時があります。 これはアクセスのバグでしょうか? 原因がわかりません。 バージョンは2010です。

  • PowerPoint VBAコマンドボタンでのマクロ

    PowerPointでVBAを使ったフォームを作製しました。 そのフォームを表示させるためマクロを書き、スライド上に コマンドボタンを配置させマクロを実行させたいと思っています。 ExcelのVBAですとコマンドボタンにマクロを割り当てるのは ツールバーのフォームのコマンドボタンで設置すると簡単ですが PowerPoint VBAですとコントロールツールボックスでのコマンド ボタンしかなくボタンにマクロを割り当てる方法が分かりません。 どなたかコマンドボタンにマクロを割り当てて実行する方法を 教えて下さい。 宜しくお願い致します。

  • AccessからExcelのコマンドボタンイベント

    Access2003 WinXP です。宜しくお願いします。 AccessのVBAでExcelファイルをコピーしたり開いたり テキストボックスの内容を書き換えたりしています。 Excelにてコントロールツールボックスから作成したコマンドボタンがあるのですが、このボタンのクリックイベントを AccessのVBAから実行させる方法を探しています。 ちなみに訳あって標準モジュールに書かれているわけではないので マクロを呼び出す方法は不可でした;; 標準モジュールに移すのは無しの方向で どなたか分かる方いらっしゃいましたらお願いします。

  • コマンドボタンやイメージにマウスをのせるとボタン名を表示したい

    Excel97,Windows98SEを使用しています。 エクセルのシートに、コントロールツールボックスで作成したコマンドボタンやイメージを配置して、クリックするとマクロを実行させるようにしています。 そのボタンやイメージに、ツールバーのボタンの上にマウスをのせるとボタンの説明が出てくるのと同じような機能を付けたいのですが、可能でしょうか? ボタンの下のセルにコメントを入れてみたのですが上手くいきませんでした…。 ご存知の方、どうぞよろしくお願いいたします。

  • アクセスのコマンドボタンについて

    アクセスについて教えて下さい。 コマンドボタンで、フォームのデータをワンクリックで開くように設定したいのですが、コマンドボタンウィザードを使って、 フォームの操作→フォームを開く→フォームを指定 という操作でボタンを作りました。 ですが、ボタンをクリックして操作しようとすると、 「イベントプロパティに指定した式 クリック時 でエラーが発生しました:名前が適切ではありません:(フォーム名)_Click   *マクロ名、ユーザー定義関数名、「イベントプロシージャ」以外の式が指定されています。   *関数、イベント、マクロの評価でエラーが発生しました。」 というメッセージが出てきて、フォームを開くことができませんでした。 ウィザードだけではフォームを開くボタンを作成することはできないのでしょうか? 何か対処があれば教えて下さい。 よろしくお願いいたします。

  • Excel2003 コマンドボタンのプロパティ

    Excel2003 の vba の初心者です。 (Access2003 の vba の方が得意です。) 既に出来上がっているExcelのvbaを編集したいのですが、 コマンドボタンのプロパティが表示できません。 Accessであれば、コマンドボタンを選択して右クリックするとプロパティがあります。 しかし、Excelでは、コントロールツールボックスでデザインモードを押下し、 コマンドボタンを選択してコントロールツールボックスのプロパティを押下しても、 プロパティの一番上のプルダウンの所は「Sheet1 Worksheet」となっていて、 ▼を押下しても、他には何もありません。 どうも、Worksheetのプロパティが表示されているようです。 コマンドボタンのプロパティを表示させるには、どうすればよいのでしょうか。 基本的なことでお恥ずかしいですが、 ご教授いただければ幸いです。 よろしくお願いいたします。

  • <ACCESS>フォームのコマンドボタンについて

    宜しくお願いします。 フォームを作成するとき、ツールボックスから「コマンドボタン」を選択し、貼り付けると、前はウィザードが表示され、このボタンをクリックするとレポート印刷するとか、色々なことをウィザードで簡単にできたのですが、それが表示されなくなりました。 どうすれば表示されるのでしょうか?

  • エクセルVBAでフォームのボタンとコントロールツールボックスのコマンドボタン

    エクセルVBAでフォームのボタンとコントロールツールボックスのコマンドボタンについて教えてください。 実はこれまでフォームしか使ったことがないのですが、フォームのボタンですと、下記のように一つのプロシージャを多数のボタンから呼び出し、呼び出したボタンにより異なった指示が出来ます。 Sub test() x = Application.Caller Select Case x Case "ボタン 1" MsgBox 1 Case "ボタン 2" MsgBox 2 Case "ボタン 3" MsgBox 3 Case "ボタン 4" MsgBox 4 End Select End Sub コントロールツールボックスは Private Sub CommandButton1_Click() MsgBox 1 End Sub Private Sub CommandButton2_Click() MsgBox 2 End Sub のようにコマンドボタンごとにひとつずつ書くしかないのでしょうか?

  • コマンドボタンが挿入できなくなった。

    突然コマンドボタンが挿入できなくなりました。 OS:Windows 8.1 Pro Soft:Excel 2013 状況: 突然コマンドボタンが挿入出来なくなりました。 コマンドボタン以外のActiveXコントロールのオブジェクトが挿入できません。 挿入しようとすると、「オブジェクトを挿入できません。」のメッセージボックスが開きます。 フォームコントロールのオブジェクトは挿入できます。 全くのお手上げで困っています。 良いアドバイスお願いいたします。