【Excel VBAの基本 Part1】繰り返し行う作業を自動化するマクロを解説

プログラミング

マクロって何?

Microsoft Excel の「マクロ」とは、繰り返し行う作業を自動化する機能のことです。
日々の業務で同じ操作を何度も行う場合、その手順を記録してボタン1つで再現できるため、作業効率を大幅に向上させることができます。

Excelマクロの基本概念

Excelマクロとは、「操作の自動化」を実現する機能です。
具体的には、ユーザーが行った操作(セル入力、書式設定、並び替えなど)を記録し、後から同じ操作を一括で実行できます。

例えば以下のような場面で活躍します。

  • 毎日同じフォーマットの資料を作成する
  • データの並び替えやフィルタ処理を繰り返す
  • 定型レポートを作る

これらの作業をマクロにすることで、数分〜数十分かかる作業が数秒で完了するようになります。

マクロの仕組み(VBAとは)

Excelマクロは、内部的に「VBA」というプログラミング言語で動いています。
VBAはExcel専用のプログラム言語で、以下のような処理が可能です。

  • セルの値を自動で変更
  • 条件に応じた処理の分岐
  • 複数シートの一括操作
  • 他のOfficeソフトとの連携

ただし、初心者はVBAを直接書かなくても「マクロの記録機能」で簡単に利用できます。

マクロのメリット

  • 作業時間の大幅短縮
    繰り返し作業を自動化することで、業務効率が劇的に向上します。
  • ヒューマンエラーの削減
    手作業によるミスを防ぎ、品質を安定させます。
  • 属人化の防止
    作業を標準化できるため、誰でも同じ結果を出せます。

Excelマクロの使い方

開発タブを出現させる


マクロの記録を行うためには、「開発」をメニューに入れなければなりません。
デフォルトでは「開発」メニューは表示されていないため、設定で出現させましょう。

メニュー下のいろんなボタンがある場所を右クリックして「リボンのユーザー設定」をクリックします。


リボンのユーザー設定」の中の「開発」にチェックを入れます。

OK」ボタンをクリックします。


開発タブ

メニューに「開発」メニューが出現します。
これでマクロの記録やVBAを記述するためのVBE(Visual Basic Editor)を起動できるようになります。


マクロの記録方法

開発」メニューをクリックします。

コードグループの中にある「マクロの記録」をクリックします。

マクロの記録のウィンドウが立ち上がります。
マクロ名は任意で付けることができます。
分かりやすい名前にすると良いでしょう。

ショートカットキーでマクロを実行できるように設定します。
ここで設定したショートカットが最優先で実行されます。
※Ctrl+CやCtrl+Vなどを設定してしまうと、マクロが優先されてしまい、コピーペーストなどができなくなってしまうので注意が必要です。

OK」ボタンをクリックします。
ウィンドウが閉じて、操作の記録が開始されます。


実習:マクロの記録とマクロ実行

実習データ「vba-macro-001.xlsx」を利用して、下記をマクロに記録します。
マクロ名は「コピペ」とし、ショートカットキーは「q」と設定しましょう。

  1. セルA1:F16までコピー
  2. 新しいシートを作成
  3. 作成されたシートのA1に貼り付け

実習の回答

マクロ名に「コピペ」と記述します。

ショートカットキーに「q」と記述します。

OK」ボタンをクリックします。


マクロの記録が開始されると、「マクロの記録」が「記録終了」に変わります。
記録したい操作を行ったら「記録終了」をクリックすると、操作が記録されます。


セルA1:F16を選択して、Ctrl+Cでコピーします。


」をクリックして新しいシートを追加します。


新しいシートのセルA1が選択された状態で、Ctrl+Vで貼り付けを行います。

記録終了」をクリックして、操作の記録を終えます。


記録したマクロの実行の仕方は2パターンあります。

マクロから実行

コードのグループ内の「マクロ」をクリック。
マクロのウィンドウで保存したマクロのマクロ名を選択し、「実行」ボタンをクリックします。

ショートカットで実行

設定したショートカットキーを押すことで実行することができます。
今回は「Ctrl+q」を押すことで実行されます。

マクロの記録の限界

マクロの記録では一部の操作の記録を行うことができます。
しかし、できることはマクロの全体から考えるとごくごく一部です。
マクロの記録では実現できないことがあります。

できないこと
できないこと
  • 処理の繰り返しの実行
  • 条件分岐
  • VBA関数
  • データを一時記憶させる変数を使用した処理

これらを使いこなしてマクロを動かすためには、VBAというプログラミング言語でコーディングをしてあげる必要があります。


マクロ記録の中身はVBA

VBE

マクロの記録によって記録された操作は、VBA(Visual Basic for Applications)というプログラミング言語によって記述されています。
VBAのソースコードを表示、編集を行うためには「VBE(Visual Basic Editor)」を使用します。
VBEは、VBAを編集するためのエディタです。


VBEの起動方法

開発メニュー内、コードグループの「Visual Basic」をクリックします。
VBEが起動します。

Alt+F11キーのショートカットキーを押しても、VBEを起動することができます。


コード閲覧方法

左側のプロジェクトエクスプローラーの中の「標準モジュール」の左側の「」を展開します。

Module1」をダブルクリックすると、右側のコードウィンドウにVBAのソースコードが表示されます。


VBAの読み方

Sub コピペ()~End Sub」までが、コピペという名前のマクロの開始終了を意味しています。
Subの後ろがマクロ名になります。

」(シングルクォーテーション)から始まる行は、「その行はコメント」と認識されます。
コメントはマクロとして認識されません。
自分や他の人のための注釈やメモ書きとして使用します。
コメント文は緑色になります。

処理内容を記述します。
黒色で表示されます。


プロジェクト・モジュール・プロシージャの関係性

プロジェクト

VBAにおける一番大きな単位です。
1つのExcelファイル(ブック)に対して1つの「VBAProject」が存在します。
モジュール」が複数集まって構成されています。

モジュール

モジュールは、プロジェクトの中にあるコードを書くための「シート(紙)」のことです。
関連する処理をグループ化して整理する「ページ」の役割を果たします。
例えば、「データ入力用の処理をまとめたページ(モジュール)」や「印刷用の処理をまとめたページ」といった具合に分けるのが一般的です。

プロシージャ

プロシージャは、モジュールの中に書き込まれる最小の実行単位です。
ここからここまでが一つの作業」という区切りのことを指します。
実際に「セルを赤くする」「計算をする」といった具体的な命令を下します。
Sub プロシージャ名()」~「End Sub」までがひとつのプロシージャです。


タイトルとURLをコピーしました