Excel でマクロを実行する

適用先
Excel for Microsoft 365 Excel for Microsoft 365 for Mac Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2016

Microsoft Excel でマクロを実行するには、いくつかの方法があります。 マクロは、タスクの実行を自動化するための単独の操作または複数の操作です。 マクロは、Visual Basic for Applications プログラミング言語で記録されます。 マクロを実行するには、リボンの [開発] タブの [マクロ] コマンドを選択します。 マクロの実行の割り当て方法によっては、ショートカットの組み合わせキーを押すか、クイック アクセス ツール バーまたはリボンのカスタム グループのボタンを選択するか、オブジェクト、グラフィック、またはコントロールを選択して実行することもできます。 さらに、ブックを開くたびにマクロを自動的に実行できます。

マクロを実行する前に

マクロの作業を開始する前に、[開発者] タブを有効にする必要があります。

  • Windows の場合は、[ファイル>オプション>リボンのユーザー設定] に移動し、[メイン タブ] の [リボンのユーザー設定] セクションで [開発チェック] ボックスチェック、[OK] をクリックします
  • Mac の場合は、[Excel>環境設定]...> の順に移動します。ツール バー & リボンを選択し、[メイン タブ] の [リボンのユーザー設定] セクションで、[開発者チェック] ボックスチェック、[OK] をクリックします。

[開発者] タブからマクロを実行する

  1. マクロを含むブックを開きます。

  2. [ Developer] タブで、[ Macros] を選択します。

  3. [ マクロ名] ボックスで、実行するマクロを選択し、[ 実行 ] ボタンを押します。

  4. 他にも次のような選択肢があります。

    • オプション - ショートカット キーまたはマクロの説明を追加します。
    • [ステップ イン] または [ステップ イン] - Visual Basic Editor が開き、マクロの最初の行が表示されます。 F8 キーを押すと、マクロ コードを一度に 1 行ずつ実行できます。
    • 編集 - これにより、Visual Basic Editor が開き、必要に応じてマクロ コードを編集できるようになります。 変更を加えたら、F5 キーを押してエディターからマクロを実行できます。

ショートカット キーの組み合わせを押してマクロを実行する

組み合わせショートカット キーは、マクロを記録するときに追加できます。また、既存のマクロに追加することもできます。

  1. [ Developer] タブで、[ Macros] を選択します。

  2. [ マクロ名] ボックスで、ショートカットの組み合わせキーに割り当てるマクロを選びます。

  3. [オプション] を選択します。
    [マクロ オプション] ダイアログ ボックスが表示されます。

  4. [ショートカット キー] ボックスに、ショートカット キーで使用する小文字または大文字を入力します。

    • Windows の場合、小文字のショートカット キーは Ctrl + 文字です。 大文字の場合は、Ctrl + Shift + 文字 です。
    • Mac の場合、小文字のショートカット キーは Option + Command + 文字ですが、Ctrl + 文字も同様に機能します。 大文字の場合は、Ctrl + Shift + 文字 です。
    • ショートカット キーの割り当ては、マクロを含むブックが開いている間、同等の既定の Excel ショートカット キーを上書きするため、注意してください。 たとえば、マクロを Ctrl + z に割り当てると、 元に戻す機能が失われます。 このため、一般的には、代わりに Ctrl + Shift + Z のような Ctrl + Shift + 大文字を使用することをお勧めします。Excel には同等のショートカットがありません。

    既に Excel に割り当てられている Ctrl キーを使用したショートカット キーの一覧については、「Excel のショートカット キーとファンクション キー」を参照してください。

  5. [説明] ボックスにマクロの説明を入力します。

  6. [ OK ] を選択して変更を保存し、[ キャンセル] を選択して [ マクロ] ダイアログ ボックスを閉じます。

クイック アクセス ツール バーのボタンを選択してマクロを実行する

クイック アクセス ツール バーのボタンをクリックしてマクロを実行するには、まずボタンをツール バーに追加してください。 これを行うには、「ボタンにマクロを割り当てる」を参照してください。

リボンのカスタム グループのボタンを選択してマクロを実行する

リボンのタブに表示されるカスタム グループを作成して、そのグループのボタンにマクロを割り当てることができます。 たとえば、[ 開発 ] タブに "マイ マクロ" という名前のカスタム グループを追加し、その新しいグループにマクロ (ボタンとして表示される) を追加できます。 これを行うには、「ボタンにマクロを割り当てる」を参照してください。

グラフィック オブジェクトの領域を選択してマクロを実行する

ユーザーがクリックしてマクロを実行できるホットスポットをグラフィックに作成できます。

  1. ワークシートに、画像などのグラフィック オブジェクトを挿入するか、図形を描画します。 一般的なシナリオは、角丸四角形を描画し、ボタンのように見えるように書式設定することです。
    グラフィック オブジェクトの挿入方法については、「図形を追加、変更、削除する」をご覧ください。

  2. 作成したホットスポットを右クリックし、[ マクロの割り当て] を選択します。

  3. 次のいずれかの操作を行います。

    • グラフィック オブジェクトに既存のマクロを登録するには、マクロ名をダブルクリックするか、[マクロ名] ボックスにマクロ名を入力します。

    • 選択したグラフィック オブジェクトに割り当てる新しいマクロを記録するには、[ マクロの記録] を選択し、[ マクロの記録 ] ダイアログ ボックスでマクロの名前を入力し、[ OK ] を選択してマクロの記録を開始します。 マクロの記録が終了したら、[コード] グループの [開発者] タブで [記録の停止] ボタンの画像を選択します。

      ヒント

       ステータス バーの左側にある [記録停止] ボタンの画像 を選択することもできます。

    • 既存のマクロを編集するには、[ マクロ名 ] ボックスでマクロの名前を選択し、[ 編集] を選択します。

  4. [OK] を選択します。

Visual Basic Editor (VBE) からマクロを実行する

[ 開発] タブで Visual Basic を選択して、 Visual Basic Editor (VBE) を起動します。 実行するマクロを含むモジュールをプロジェクト エクスプローラーで探して開きます。 そのモジュール内のすべてのマクロが右側のウィンドウに一覧表示されます。 実行するマクロを選択します。カーソルをマクロ内の任意の場所に置き、 F5 キーを押すか、メニューで [マクロ の実行>実行] に移動します。

ブックを開くときに自動的に実行されるようにマクロを構成する

Workbook_Open イベントを作成します。

次の例では、ブックを開いたときに Open を使用してマクロを実行します。

  1. マクロを追加するブックを開くか、新しいブックを作成します。

  2. [ 開発] タブの [コード ] グループで、[ Visual Basic] を選択します。

  3. プロジェクト エクスプローラー ウィンドウで、ThisWorkbook オブジェクトを右クリックし、[コードの表示] を選択します。

    ヒント

    プロジェクト エクスプローラー ウィンドウが表示されない場合は、[表示] メニューの [プロジェクト エクスプローラー] を選択します。

  4. コード ウィンドウの上部の [オブジェクト] ボックスの一覧で、[ブック] を選択します。
    これにより、 次のような Open イベントの空のプロシージャが自動的に作成されます。

    プライベート サブ Workbook_Open()

    End Sub

  5. プロシージャに次のコード行を追加します。

    プライベート サブ Workbook_Open()
    MsgBox の日付
    Worksheets("Sheet1").Range("A1").値 = 日付
    End Sub

  6. Excel に戻り、ブックをマクロ有効ブック (.xlsm) として保存します。

  7. ブックを閉じてから、再度開きます。 ブックを再度開くと、Excel は Workbook_Open プロシージャを実行し、メッセージ ボックスに今日の日付が表示されます。

  8. メッセージ ボックスで [ OK ] を選択します。

    Workbook_Open プロシージャを実行することにより、Sheet1 のセル A1 にも日付が挿入されます。

補足説明

Excel 技術コミュニティの専門家にいつでも質問するか、コミュニティでサポートを受けることができます。

ページの先頭へ

関連項目

ブックを開いたときにマクロを自動的に実行する

マクロ記録で作業を自動化する

Excel の起動時にマクロを記録し特定のブックを開く

単一のブックにすべてのマクロを作成して保存する

マクロの保存