「Excelの作業が毎日同じで面倒くさい…」「もっと効率化したいけど、プログラミングは難しそう…」
そんな方にこそ知ってほしいのが、Excelに標準搭載されているプログラミング機能、VBA(Visual Basic for Applications)です! VBAを使えば、あなたのExcel作業を劇的に効率化できます。
日々の繰り返し作業はVBAで瞬時に完了。あとはご自由に!
1. VBAとは? 何ができるの?
VBAは、Microsoft Office製品(Excel、Word、Accessなど)を操作するために作られた言語です。ExcelでVBAを使って作られたプログラムのことをマクロと呼びます。
マクロで実現できること
-
定型作業の自動化: 毎日行うデータ入力、並べ替え、特定の形式への集計などをワンクリックで完了させます。
-
複雑な条件処理: 「もしA列の値が100以上だったら、B列に『達成』と書き込む」といった、Excelの標準機能だけでは難しい処理を自動で行えます。
-
専用ツールの作成: ユーザーが使いやすいように、ボタンや入力フォーム(ユーザーフォーム)を作成できます。
要するに、Excelでの「人の手による操作」をコンピューターに記憶させて、いつでも実行できるようにする仕組みだとイメージしてください。
2. 準備編:開発タブを表示しよう
VBAを使うには、まずExcelのリボン(上部のメニュー)に「開発」タブを表示させる必要があります。これは初期設定では非表示になっていることが多いです。
-
「ファイル」タブをクリックします。
-
左側のメニューから「オプション」を選択します。
-
表示されたウィンドウで「リボンのユーザー設定」を選択します。
-
右側にある「メインタブ」の一覧から、「開発」にチェックを入れます。
-
「OK」をクリックして閉じると、リボンに「開発」タブが表示されます。
これでVBAを使うための準備は完了です!

3. まずは体験!「マクロの記録」
VBAコードを自分で書く前に、まずは「マクロの記録」機能を使って、VBAがどのように動くのか体験してみましょう。
この機能は、あなたがExcel上で行った操作を、VBAコードとして自動的に書き出してくれます。
ステップ・バイ・ステップ
-
「開発」タブをクリックし、「マクロの記録」ボタンをクリックします。
-
マクロ名(例:
Test等と)を設定し、「OK」をクリックします。-
これで記録が開始されました!
-
-
ExcelのB2セルをクリックし、セルに「こんにちは」と入力します。
-
B2セルの文字を太字にします(ホームタブのBボタン)。
-
「開発」タブに戻り、「記録終了」ボタンをクリックします。
-
記録が停止しました。
-
実行してみよう!
-
B2セル以外のセル(例: D5セル)を選択します。
-
「開発」タブの「マクロ」をクリックします。
-
一覧から
Testを選び、「実行」をクリックします。
どうでしょうか? あなたが選んでいたセルに関わらず、B2に「こんにちは」という太字の文字が自動で入力されたはずです。

4. VBEを見てみよう
記録したマクロの正体を見てみましょう。VBAコードを編集するための専用画面をVBE(Visual Basic Editor)と呼びます。
-
「開発」タブの「Visual Basic」をクリックするか、Alt + F11キーを押して開きます。
すると、このようなコードが見つかるはずです。(一部の行は省略)
VBA
上記プログラムの解説Option Explicit:変数を宣言することを強制するためのコード(決まり事)Sub TEST(): TESTというマクロの名前 マクロ書き出しの約束ごと‘ TEST Macro:コメント (プログラムに影響ない)Range(“B2”).Select:B2セルをセレクト(選択した)ActiveCell.FormulaR1C1 = “こんにちは”:アクティブセルに”こんにちは”の文字を入力Range(“B2”).Select:B2セルをセレクト(選択した)Selection.Font.Bold = True:選択した文字のフォントを太字にEnd Sub:マクロ終了時の約束ごと
-
Sub TEST()からEnd Subまでが、ひとまとまりのプログラム(マクロ)です。 -
行頭の ’(シングルクォーテーション)は「コメント」と呼ばれ、プログラムの動きには影響しないメモ書きです。
このコードを編集することで、記録機能では実現できない、より複雑で柔軟な自動化が可能になります!
まずは「開発」タブの表示と「マクロの記録と実行」に慣れることが第一歩です。
この記事を書いているのは、【Excel問題解決Lab.】筆者「16時間」を「5秒処理」化。 Excelユーザー歴25年の経歴を持つ筆者が解説。過去には、事務員さんの年間約192時間の工数削減を実現。削減できた時間は、より付加価値の高い分析業務に充てられるようになり、社内の生産性向上と業務省力化に貢献。
