【Excel】Excelシートにボタンを配置してマクロを割り当てる方法

【Excel】Excelシートにボタンを配置してマクロを割り当てる方法
🛡️ 超解決

Excelでの定型作業を効率化したいと考えるビジネスマンは多いでしょう。手作業による繰り返し作業は、時間もかかりミスも発生しやすくなります。Excelシートにボタンを配置すれば、ワンクリックでマクロを実行できます。この記事では、シートにマクロ実行ボタンを配置する具体的な手順を解説します。マクロを安全に利用するためのセキュリティ設定についても理解できます。

【要点】Excelシートにマクロ実行ボタンを配置し業務を自動化する

  • フォームコントロールのボタン配置: シンプルなボタンをシートに配置し、既存のマクロを簡単に割り当てられます。
  • ActiveXコントロールのボタン配置: より高度な設定やVBAでの詳細なイベント処理が可能なボタンを配置します。
  • マクロのセキュリティ設定: マクロが安全に実行されるように、セキュリティ警告への対処法を調整します。

ADVERTISEMENT

Excelシートにマクロボタンを配置する意義と前提条件

Excelのマクロボタンは、繰り返し行う作業を自動化するVBAプログラムを、シート上のボタンから簡単に実行できるようにする機能です。これにより、作業の手間を大幅に削減し、手作業によるヒューマンエラーを防ぐ効果が期待できます。誰でも簡単にマクロを使えるようになるため、作業の標準化にも貢献します。

2種類のマクロボタンの概要

Excelには、主に「フォームコントロール」と「ActiveXコントロール」の2種類のボタンがあります。フォームコントロールは、設定が容易で主に既存のマクロを割り当てる場合に適しています。ActiveXコントロールは、より詳細なプロパティ設定やVBAでのイベント処理が可能で、複雑なインタラクションを実現したい場合に利用します。

マクロボタン利用の前提条件

マクロボタンを配置するには、Excelの「開発」タブが表示されている必要があります。また、ボタンに割り当てるVBAマクロが、標準モジュールまたはシートモジュールに作成済みであることが前提です。マクロが含まれるブックは、マクロ有効ブック (.xlsm) として保存しなければなりません。

お探しの解決策が見つからない場合は、こちらの「Excelトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

Excelシートにマクロボタンを配置する具体的な手順

ここでは、Excelシートにマクロボタンを配置し、既存のマクロを割り当てる手順を解説します。フォームコントロールとActiveXコントロールの両方について説明します。

「開発」タブを表示する手順

既定の状態では「開発」タブは表示されていません。以下の手順で表示します。

  1. Excelオプションを開く
    「ファイル」タブをクリックし、「オプション」を選択します。
  2. リボンのユーザー設定へ移動する
    「Excelのオプション」ダイアログで、左側のメニューから「リボンのユーザー設定」をクリックします。
  3. 「開発」タブを有効にする
    右側の「メインタブ」の一覧から「開発」チェックボックスをオンにし、「OK」をクリックします。

フォームコントロールのボタンを配置しマクロを割り当てる手順

フォームコントロールは、シンプルなボタンで簡単にマクロを割り当てられます。

  1. 「挿入」メニューを開く
    「開発」タブをクリックし、「コントロール」グループにある「挿入」をクリックします。
  2. フォームコントロールのボタンを選択する
    「フォームコントロール」の下にある「ボタン (フォームコントロール)」を選択します。
  3. シートにボタンを配置する
    シート上でボタンを配置したい位置をドラッグして、ボタンのサイズと形を決めます。
  4. マクロを登録する
    「マクロの登録」ダイアログが表示されます。割り当てたいマクロ名を選択し、「OK」をクリックします。
  5. ボタンのテキストを編集する
    配置されたボタンを右クリックし、「テキストの編集」を選択します。ボタンに表示したい任意のテキストを入力します。
  6. ボタンを調整する
    ボタンをクリックして選択状態にし、サイズや位置を調整できます。
  7. マクロを実行する
    シート上のボタンをクリックすると、割り当てられたマクロが実行されます。

ActiveXコントロールのボタンを配置しマクロを割り当てる手順

ActiveXコントロールは、より詳細な設定やVBAでのイベント処理が可能です。

  1. 「挿入」メニューを開く
    「開発」タブをクリックし、「コントロール」グループにある「挿入」をクリックします。
  2. ActiveXコントロールのコマンドボタンを選択する
    「ActiveXコントロール」の下にある「コマンドボタン」を選択します。
  3. シートにボタンを配置する
    シート上でボタンを配置したい位置をドラッグして、ボタンのサイズと形を決めます。
  4. デザインモードをオンにする
    「開発」タブの「コントロール」グループにある「デザインモード」をクリックしてオンにします。
  5. ボタンのプロパティを設定する
    配置したボタンを右クリックし、「プロパティ」を選択します。「プロパティ」ウィンドウが開きます。
  6. 表示テキストを変更する
    「プロパティ」ウィンドウで「Caption」プロパティを見つけ、ボタンに表示したいテキストを入力します。
  7. VBAエディターを開く
    「プロパティ」ウィンドウを閉じて、デザインモードがオンの状態のボタンをダブルクリックします。VBE (VBAエディター) が起動します。
  8. クリックイベントプロシージャにコードを記述する
    VBEのコードウィンドウに、ボタンがクリックされたときに実行したいマクロの呼び出しコードを記述します。
    例: Call MyMacro (「MyMacro」は実行したいマクロ名です)
  9. VBAエディターを閉じる
    VBEを閉じ、Excelに戻ります。
  10. デザインモードをオフにする
    「開発」タブの「コントロール」グループにある「デザインモード」をもう一度クリックしてオフにします。
  11. マクロを実行する
    シート上のボタンをクリックすると、割り当てられたマクロが実行されます。

マクロを含むExcelファイルを保存する手順

マクロを記述したブックは、通常とは異なる形式で保存する必要があります。

  1. 「名前を付けて保存」を選択する
    「ファイル」タブをクリックし、「名前を付けて保存」を選択します。
  2. 保存場所を選ぶ
    ファイルを保存したい場所を選択します。
  3. ファイルの種類を変更する
    「ファイルの種類」のドロップダウンリストから「Excel マクロ有効ブック (*.xlsm)」を選択します。
  4. ファイルを保存する
    「保存」ボタンをクリックしてファイルを保存します。

マクロのセキュリティ警告への対処法

マクロを含むファイルを開く際には、セキュリティ警告が表示されることがあります。以下の方法で対処します。

  1. セキュリティ警告バーから有効化する
    ファイルを開いたときに表示される上部のセキュリティ警告バーで、「コンテンツの有効化」ボタンをクリックします。これは一時的な有効化です。
  2. 信頼できる場所として設定する
    頻繁にマクロファイルを利用する場合は、ファイルを保存するフォルダを「信頼できる場所」に設定すると、警告が表示されなくなります。
    1. 「ファイル」タブをクリックし、「オプション」を選択します。
    2. 「Excelのオプション」ダイアログで「トラストセンター」をクリックし、「トラストセンターの設定」ボタンをクリックします。
    3. 「トラストセンター」ダイアログで「信頼できる場所」を選択します。
    4. 「新しい場所の追加」ボタンをクリックし、マクロファイルが保存されているフォルダのパスを追加します。「この場所のサブフォルダーも信頼する」にチェックを入れると、そのフォルダ以下の全てのサブフォルダも信頼されます。
    5. 「OK」をクリックしてダイアログを閉じます。

マクロボタン操作時の注意点と発生しやすいトラブル

マクロボタンの利用にはいくつかの注意点があります。よくある誤操作やトラブルの対処法を理解しましょう。

ボタンをクリックしてもマクロが実行されない

マクロが実行されない場合、主に以下の原因が考えられます。

原因: マクロが正しく割り当てられていない、またはマクロ自体にVBAコードの誤りがある可能性があります。ActiveXコントロールの場合は、「デザインモード」がオンのままになっていることもあります。

対処: フォームコントロールの場合は、ボタンを右クリックして「マクロの登録」を選択し、正しいマクロ名が選択されているか確認します。ActiveXコントロールの場合は、「開発」タブの「デザインモード」がオフになっているか確認してください。VBAエディターでマクロコードを開き、文法エラーや実行時エラーがないかデバッグすることも重要です。

ActiveXコントロールがデザインモードから抜け出せない

ActiveXコントロールを配置したり編集したりする際は「デザインモード」をオンにします。このモードがオンのままだと、ボタンはクリックできず編集状態になります。

原因: 「開発」タブの「デザインモード」ボタンがオンの状態になっています。

対処: 「開発」タブの「コントロール」グループにある「デザインモード」ボタンをもう一度クリックし、オフにしてください。これにより、ボタンは通常のクリック可能な状態に戻ります。

ボタンのデザインを自由に変更できない

ボタンの種類によってデザインの自由度が異なります。

原因: フォームコントロールはデザインのカスタマイズが限られています。背景色や枠線の変更はできません。

対処: フォームコントロールの場合、テキストの色やサイズは、書式設定ツールバーから変更できます。より高度なデザイン変更や視覚的なカスタマイズが必要な場合は、ActiveXコントロールを使用してください。ActiveXコントロールは、「プロパティ」ウィンドウから背景色 (BackColor) やフォント (Font) など、詳細なデザイン設定を調整できます。

Excel2019や2021での操作の違い

本記事の操作手順はExcel for Microsoft 365 (Windows版) を基準にしています。Excel2019や2021でも基本的な操作手順は共通です。

注意点: 細かなUIの表示やダイアログのデザインが一部異なる場合がありますが、機能的な制限はほとんどありません。特にVBAの動作やマクロの割り当て方法に大きな違いはありません。

ADVERTISEMENT

フォームコントロールとActiveXコントロールの比較

2種類のマクロボタンの特性を理解し、用途に応じて使い分けることが重要です。

項目 フォームコントロール ActiveXコントロール
用途 既存マクロの簡単な実行、シンプルな操作 高度なインタラクション、イベント処理、詳細なデザイン設定
設定の容易さ 容易 やや複雑
VBA連携 マクロを直接割り当てる VBEでイベントプロシージャに直接コード記述が可能
デザイン自由度 低い 高い
イベント処理 クリックイベントのみ クリック、ダブルクリック、マウス移動など多様なイベントに対応
互換性 比較的高い Excelのバージョンや環境に依存する場合がある

この記事では、Excelシートにマクロ実行ボタンを配置する手順を解説しました。フォームコントロールとActiveXコントロールの2種類のボタンの使い分けや、マクロのセキュリティ警告への対処法も理解できたでしょう。これにより、業務の自動化を促進し、作業効率を大幅に向上させることが可能です。さらにVBAのスキルを深め、より高度なマクロとボタン連携に挑戦してみるのも良いでしょう。

📊
Excelトラブル完全解決データベースこの記事以外にも、様々なエラー解決策をまとめています。困った時の逆引きに活用してください。

ADVERTISEMENT

この記事の監修者
📈

超解決 Excel・Word研究班

企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。

🏆
超解決 Excel検定 あなたのExcel実務能力を3分で測定!【1級・2級・3級】