繰り返し作業を自動化するために、Microsoft Excel のマクロ レコーダーでマクロを記録できます。 たとえば、形式が統一されていない日付があるときに、1 つの形式をそれらすべての日付に適用できれば便利です。 それを実行できるのがマクロです。 特定の形式を適用するマクロを記録し、必要なときにそのマクロを再び実行します。
マクロを記録すると、マクロ 記録機能によって、すべてのステップがコード Visual Basic for Applications (VBA) されます。 これらの手順には、テキストまたは数値の入力、リボンまたはメニュー上のセルまたはコマンドのクリック、セル、行、列の書式設定、Microsoft Access などの外部ソースからのデータのインポートが含まれます。 Visual Basicアプリケーション (VBA) は、強力なプログラミング言語Visual Basicのサブセットであり、ほとんどのアプリケーションにOfficeされています。 VBA では、Office アプリケーション内および Office アプリケーション間のプロセスを自動化することができますが、マクロ レコーダーが必要な処理を実行する場合は、VBA コードやコンピューター プログラミングを知る必要はありません。
これは重要なことですが、マクロを記録するとき、マクロ レコーダーはほとんどすべての動作を記録します。 順番を間違えた場合、たとえば、あるボタンを意図せずにクリックしてしまった場合、マクロ レコーダーはその動作を記録します。 この解決策は、全体を記録し直すか、VBA コード自体を修正することです。 そのため、マクロを記録するときは、自分が使い慣れているプロセスを記録することが最善となります。 一連の動作を支障なく記録できれば、マクロを実行したとき、マクロが効率的に動作します。
マクロと VBA ツールは [開発] タブにあります。このタブは既定で非表示になっているため、最初の手順はこれを有効にすることになります。 詳細については、「[開発] タブを表示する」を参照してください。
![リボンの [開発] タブ](https://support.content.office.net/ja-jp/media/be1200dc-fdf2-48d0-a8e6-b23a1a885339.png)
マクロを記録する
マクロについて、知っていると便利なことがいくつかあります。
-
Excel の範囲内の一連のタスクを実行するためのマクロを記録すると、マクロは範囲内のセルにのみ実行されます。 そのため、範囲に行を追加した場合、マクロは新しい行に対してプロセスを実行するのではなく、範囲内のセルのみを実行します。
-
一連の作業が長い場合、1 つの長いマクロを記録する代わりに、関連する複数のマクロを作成してください。
-
マクロに記録できるのは、Excel 内の作業に限定されません。 マクロ プロセスは、他の Office アプリケーションや Visual Basic Application (VBA) をサポートする他のアプリケーションに拡張できます。 たとえば、最初に Excel でテーブルを更新し、次に Outlook を開き、そのテーブルを特定のメール アドレスに送信するマクロを記録できます。
次の手順でマクロを記録します。
-
[開発] タブの [コード] で、[マクロの記録] をクリックします。
または
Alt + T + M + R キーを押します。
-
[マクロ名] ボックスにマクロ名を入力します。 複数のマクロを作成したときにすぐに見つけられるように、名前はできるだけわかりやすいものにしてください。
注: 2 番目以降の文字には、文字、数字、またはアンダースコア (_) を使用できます。 マクロ名にスペースは使用できません。 単語を区切るときはアンダースコアを使います。 セル参照と同じマクロ名を使用した場合、マクロ名が無効であることを通知するエラー メッセージが表示されることがあります。
-
マクロを実行するためにキーボード ショートカットを割り当てるには、[ショートカット キー] ボックスに、使用する文字を入力します (大文字と小文字のいずれも可)。 マクロショートカット キーは、マクロを含むブックが開いている間、同等の既定の Excel ショートカット キーをオーバーライドします。Ctrl + Shift (大文字) キーの組み合わせを使用する方が最適です。 たとえば、Ctrl + Z (元に戻す) を使用すると、そのインスタンスで元に戻す機能Excelされます。
-
[マクロの保存先] の一覧で、マクロを保存する場所を選択します。
一般的に、[作業中のブック] の場所にマクロを保存しますが、Excel を使用するときにいつでもマクロを使用できるようにする場合は、[個人用マクロ ブック] を選択します。 この [個人用マクロ ブック] を選択すると、存在しない場合は非表示の個人用マクロ ブック (Personal.xlsb) が作成され、このブックにマクロが保存されます。
-
[説明] ボックスに、マクロの作業内容の簡単な説明を入力します (省略可能)。
説明フィールドは省略可能ですが、入力をお勧めします。 また、マクロを実行するユーザーや他のユーザーにとって役に立つ情報を含むわかりやすい説明を入力してみてください。 多くのマクロを作成する場合、説明を使用すると、どのマクロが何を行うのかを簡単に特定できます。それ以外の場合は、推測する必要があります。
-
[OK] をクリックして、記録を開始します。
-
記録する操作を実行します。
-
[開発]タブの [コード]グループで、[記録の停止] をクリック
。
または
Alt + T + M + R キーを押します。
Excel で記録したマクロを使用する
[開発] タブで、[マクロ] をクリックし、ブックに関連付けられているマクロを表示します。 または、Alt + F8 キーを押します。 [マクロ] ダイアログ ボックスが開きます。
![[マクロ] ダイアログ ボックス](https://support.content.office.net/ja-jp/media/15e4508a-6535-4ef2-9b0a-a9a6b2ef9179.png)
注意: マクロを元に戻すことはできません。 記録したマクロを初めて実行する前に、マクロを実行するブックを保存しておくか、ブックのコピーでマクロを実行し、不要な変更が行われないようにします。 マクロを実行し、求めた結果が得られなかった場合、保存せずにブックを終了してください。
Excel のマクロに関する追加情報を以下の表にまとめてあります。
作業 |
説明 |
マクロで利用できるセキュリティ設定に関する特定の情報とその意味を確認します。 |
|
マクロはさまざまな方法で実行できます。たとえば、ショートカット キー、グラフィック オブジェクト、クイック アクセス ツール バー、ボタンを使用できます。ブックを開くときにも実行できます。 |
|
Visual Basic エディターを利用し、ブックに関連付けられているマクロを編集します。 |
|
別の場所で使用する VBA マクロがブックに含まれている場合、Microsoft Visual Basic Editor を使用して、そのマクロを含むモジュールを、開いている別のブックにコピーできます。 |
|
マクロをオブジェクト、図形、グラフィックに割り当てる |
|
マクロをグラフィック アイコンに割り当て、それをクイック アクセス ツール バーまたはリボンに追加できます。 |
|
ワークシートのフォームと ActiveX コントロールにマクロを割り当てることができます。 |
|
Office ドキュメントのマクロを有効または無効にする方法について説明します。 |
|
Visual Basic エディターを起動する |
Alt + F11 キーを押します。 |
Visual Basic 要素に関するヘルプを表示する方法について説明します。 |
記録したコードを Visual Basic Editor (VBE) で操作する
記録したコードを Visual Basic Editor (VBE) で操作し、独自の変数、制御構造、マクロ レコーダーでは記録できないその他のコードを追加できます。 マクロ レコーダーは記録中に行ったほとんどすべての動作を記録するので、マクロの目的にかなっていない不要なコードが記録されている場合、それを除去することもできます。 記録したコードを見直す作業は、VBA プログラミング技能を学び、磨く上で大切です。
「Excel VBA の基礎知識」では、記録したコードの変更方法をサンプル コードを用いて説明しています。
マクロを記録する
マクロについて、知っていると便利なことがいくつかあります。
-
Excel の範囲内の一連のタスクを実行するためのマクロを記録すると、マクロは範囲内のセルにのみ実行されます。 そのため、範囲に行を追加した場合、マクロは新しい行に対してプロセスを実行するのではなく、元の範囲内のセルのみを実行します。
-
一連の作業が長い場合、1 つの長いマクロを記録する代わりに、関連する複数のマクロを作成してください。
-
マクロに記録できるのは、Excel 内の作業に限定されません。 マクロ プロセスは、他の Office アプリケーションや Visual Basic Application (VBA) をサポートする他のアプリケーションに拡張できます。 たとえば、最初に Excel でテーブルを更新し、次に Outlook を開き、そのテーブルを特定のメール アドレスに送信するマクロを記録できます。
マクロと VBA ツールは [開発] タブにあります。このタブは既定で非表示になっているため、最初の手順はこれを有効にすることになります。
-
[環境設定] Excel>に移動します。> リボン& ツールバー。
-
[リボンのユーザー設定] カテゴリの [メイン タブ] の一覧で、[開発] チェック ボックスをオンにしてから、[保存] をクリックします。
次の手順でマクロを記録します。
-
[開発] タブの [マクロの記録] をクリックします
-
[マクロ名] ボックスにマクロ名を入力します。 複数のマクロを作成したときにすぐに見つけられるように、名前はできるだけわかりやすいものにしてください。
注: 2 番目以降の文字には、文字、数字、またはアンダースコア (_) を使用できます。 マクロ名にスペースは使用できません。 単語を区切るときはアンダースコアを使います。 セル参照と同じマクロ名を使用した場合、マクロ名が無効であることを通知するエラー メッセージが表示されることがあります。
-
[マクロの保存先] の一覧で、マクロを保存する場所を選択します。
通常、[このブック] の場所にマクロを保存しますが、Excel を使用するたびにマクロを使用する場合は、[個人用マクロ ブック] を選択します。 [個人用マクロブック]を選択すると、Excel は非表示の個人用マクロ ブック (PERSONAL.XLSB) を作成し (存在しない場合)、このブックにマクロを保存します。 Excel が起動すると、そのフォルダー内のブックが自動的に開き、個人用マクロ ブックに保存したコードが [マクロ] ダイアログに表示されます。このコードは次のセクションで説明します。
-
マクロを実行するためにキーボード ショートカットを割り当てるには、[ショートカット キー] ボックスに、使用する文字を入力します (大文字と小文字のいずれも可)。 ショートカット キーを登録したマクロを含むブックが開いている間は、対応する Excel の既定のショートカット キーが無効になるため、既存のショートカット キーに対応するキーの組み合わせは使用しないことをお勧めします。
-
[説明] ボックスに、マクロの作業内容の簡単な説明を入力します (省略可能)。
説明フィールドは省略可能ですが、入力をお勧めします。 マクロを実行するユーザーや他のユーザーにとって役に立つ情報を含むわかりやすい説明を入力すると便利です。 多くのマクロを作成する場合、説明を使用すると、どのマクロが何を行うのかを簡単に特定できます。それ以外の場合は、推測する必要があります。
-
[OK] をクリックして、記録を開始します。
-
記録する操作を実行します。
-
[開発] タブの [記録終了] をクリックします。
Excel で記録したマクロを使用する
[開発] タブで、[マクロ] をクリックし、ブックに関連付けられているマクロを表示します。 [マクロ] ダイアログ ボックスが開きます。
注: マクロを元に戻すことはできません。 記録したマクロを初めて実行する前に、マクロを実行するブックを保存しておくか、ブックのコピーでマクロを実行し、不要な変更が行われないようにします。 マクロを実行し、求めた結果が得られなかった場合、保存せずにブックを終了してください。
Excel のマクロに関する追加情報を以下の表にまとめてあります。
作業 |
説明 |
Excel for Mac のマクロを有効または無効にする方法について説明します。 |
|
別の場所で使用する VBA マクロがブックに含まれている場合、Microsoft Visual Basic Editor を使用して、そのマクロを含むモジュールを、開いている別のブックにコピーできます。 |
|
マクロをオブジェクト、図形、グラフィックに割り当てる |
|
マクロをグラフィック アイコンに割り当て、それをクイック アクセス ツール バーまたはリボンに追加できます。 |
|
ワークシートのフォームと ActiveX コントロールにマクロを割り当てることができます。 |
|
Visual Basic エディターを起動する |
[開発] タブで、[Visual Basic] をクリックするか、[ツール] メニュー、[マクロ]、[Visual Basic エディター] の順にクリックします。 |
Visual Basic 要素に関するヘルプを表示する方法について説明します。 |
補足説明
Excel 技術コミュニテでは、いつでも専門家に質問できます。また、Answers コミュニティでは、サポートを受けられます。