フォームまたはコントロール ボタンにマクロを割り当てる

ボタン (フォーム コントロール) またはコマンド ボタン (ActiveX コントロール) を使用して、ユーザーがボタンをクリックするとマクロが実行され、特定の処理が行われるように設定できます。

フォーム コントロール ボタンと ActiveX コントロール コマンド ボタンはどちらも、プッシュ ボタンとも呼ばれます。ボタンまたはコマンド ボタンを使用して、ワークシートの印刷、データのフィルタ処理、または数値の計算を自動で行うことができます。一般に、フォーム コントロール ボタンと ActiveX コントロール コマンド ボタンは、外観も機能も似ています。ただし、以降のセクションで説明するように、いくつかの相違点があります。

ボタン (フォーム コントロール)

[フォーム] ツール バーのボタン コントロールの例

コマンド ボタン (ActiveX コントロール)

ActiveX のコマンド ボタン コントロールの例

マクロと VBA ツールは [開発] タブにあります。このタブは既定で非表示になっているため、最初の手順はこれを有効にすることになります。

リボンの [開発] タブ

それには、次の手順を実行します。

  • Excel 2016、Excel 2013、Excel 2010 の場合

    1. [ファイル]、[オプション]、[リボンのユーザー設定] の順に移動します。

    2. [リボンのユーザー設定] カテゴリの [メイン タブ] の一覧で、[開発] チェック ボックスをオンにし、[OK] をクリックします。

      リボンのカスタマイズ
  • Excel 2007 の場合

    1. Microsoft Office ボタン Office ボタンの画像 をクリックし、次に [Excel のオプション] をクリックします。

      Excel のオプション
    2. [基本設定] カテゴリの [Excel の操作の基本オプション] で、[[開発] タブをリボンに表示する] チェック ボックスをオンにし、[OK] をクリックします。

      リボン オプションに [開発] タブを表示する

ボタンを追加する (フォーム コントロール)

  1. [開発] タブの [コントロール][挿入] をクリックし、[フォーム コントロール]ボタン イメージ (ボタン) をクリックします。

    [コントロール] グループ

  2. ボタンの左上隅を表示するワークシート上の場所をクリックします。

    [マクロの登録] ダイアログ ボックスが表示されます。

  3. ボタンにマクロを割り当てて、[OK] をクリックします。

  4. ボタンのコントロールのプロパティを指定するには、ボタンを右クリックし、[コントロールの書式設定] をクリックします。

コマンド ボタンを追加する (ActiveX コントロール)

  1. [開発] タブの [コントロール] で [挿入] をクリックし、[ActiveX コントロール] の ボタン イメージ (コマンド ボタン) をクリックします。

    [コントロール] グループ

  2. ワークシートで、コマンド ボタンを配置するセルをクリックします (このセルは、表示されるコマンド ボタンの左上隅になります)。

  3. [コントロール] グループの [コードの表示] をクリックします。
    Visual Basic Editor が起動します。右のドロップダウン リストで [クリック] が選択されていることを確認します。 次の図の CommandButton1_Click という Sub プロシージャでは、ボタンがクリックされると SelectC15 と HelloMessage という 2 つのマクロが実行されます。

    Visual Basic Editor の Sub プロシージャ

  4. コマンド ボタンの Sub プロシージャでは、以下のいずれかを実行します。

    • ブックの既存のマクロの名前を入力します。 [コード] の [マクロ] をクリックすると、マクロを探すことができます。 Sub プロシージャの個別の行にマクロ名を入力すると、単一のボタンから複数のマクロを実行できます。

    • 独自の VBA コードを入力します。

  5. Visual Basic Editor を閉じ、 ボタン イメージ (デザイン モード) をクリックしてデザイン モードが無効になっていることを確認します。

  6. ボタンに関連付けられた VBA コードを実行するには、作成した ActiveX コマンド ボタンをクリックします。

  7. ActiveX コントロールを編集するために、デザイン モードで作業していることを確認します。 [開発] タブの [コントロール] グループで [デザイン モード] をオンにします。

  8. コマンド ボタンのコントロールのプロパティを指定するには、[開発] タブの [コントロール] グループで ボタン イメージ (プロパティ) をクリックします。コマンド ボタンを右クリックして、[プロパティ] をクリックすることもできます。

    注: [プロパティ] をクリックする前に、プロパティを調査または変更するオブジェクトが選択されていることを確認します。

    [プロパティ] ボックスが表示されます。各プロパティの詳細を確認するには、プロパティを選択し、F1 キーを押して Visual Basic のヘルプ トピックを表示します。Visual Basic ヘルプの [検索] ボックスにプロパティ名を入力することもできます。次の表に、用意されているプロパティの概要を示します。

指定する対象

使用するプロパティ

全般:

ブックを開いたときにコントロールが読み込まれるかどうか (ActiveX コントロールの場合は無視されます)

AutoLoad (Excel)

コントロールがフォーカスを取得できるかどうか、およびユーザーの操作で発生したイベントに対して応答できるかどうか

Enabled (フォーム)

コントロールを編集できるかどうか

Locked (フォーム)

コントロールの名前

Name (フォーム)

コントロールとその下に位置するセルとの連結方法 (自由に移動できる、移動できるがサイズ変更できない、または移動もサイズ変更も可能)

Placement (Excel)

コントロールを印刷できるかどうか

PrintObject (Excel)

コントロールが表示されるかどうか

Visible (フォーム)

文字列:

フォントの属性 (太字、斜体、サイズ、取り消し線、下線、および太さ)

Bold、Italic、Size、StrikeThrough、Underline、Weight (フォーム)

コントロールの上に表示する、コントロールを識別または説明するための説明テキスト

Caption (フォーム)

コントロールの内容を行の最後で自動的に折り返すかどうか

WordWrap (フォーム)

サイズと位置:

すべての内容が表示されるようにコントロールのサイズが自動的に調整されるかどうか

AutoSize (フォーム)

高さまたは幅 (ポイント単位)

Height、Width (フォーム)

コントロールからワークシートの左端または上端までの距離

Left、Top (フォーム)

書式:

背景色

BackColor (フォーム)

背景のスタイル (透明または不透明)

BackStyle (フォーム)

前景色

ForeColor (フォーム)

コントロールに影を適用するかどうか

Shadow (Excel)

イメージ:

コントロールに表示するビットマップ

Picture (フォーム)

ピクチャとキャプションとの相対的な位置関係 (左、上、右など)

PicturePosition (フォーム)

キーボードとマウス:

コントロールのショートカット キー

Accelerator (フォーム)

ユーザー設定のマウス アイコン

MouseIcon (フォーム)

特定のオブジェクトの上にマウスを置いたときに表示されるポインタの種類 (標準、矢印、I ビームなど)

MousePointer (フォーム)

クリックしたときにコントロールがフォーカスを取得するかどうか

TakeFocusOnClick (フォーム)

ページの先頭へ

関連項目

Office ファイルの ActiveX 設定を有効または無効にする

スキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×