Excel(エクセル)【9】VBAによるマクロ作成の手順

VBA(Visual Basic for Applications)とは、Excel(エクセル)のマクロを作成するためのプログラミング言語です。初心者の方は、VBAをどのように扱うべきか迷うかもしれません。記事では、プログラミング手順を解説するので参考としてください。

VBAによるマクロ作成の手順1_
VBE起動

Excel(エクセル)でマクロを作成するにはVBAを記述します。そのためには、VBE(Visual Basic Editor)を起動してください。Excel(エクセル)の「開発」タブ > 「Visual Basic」をクリックするか、ショートカットキー「Alt + F11」で起動します。

次に起動したVBE画面の「挿入」メニューから「標準モジュール」を選択してください。すると、VBAを記述するエリア(コードウィンドウ)が表示されます。ここにマクロのプログラミングを書くのです。

VBAによるマクロ作成の手順2_
VBAコーディング

実際にVBAをコーディングする際は、まず「Sub ○○」とプロシージャ名を決めます。プロシージャとは、マクロのタイトルのようなものです。例では、表を作成するプログラムを記述するので「表の作成」という名前をつけました。

Enterキーを押すことで「End Sub」まで自動入力されるはずです。その間にVBAコードを記述します。例では、複数行に罫線を引き、各行の背景に色を指定しました。

まずは、実際に手を動かして記述することをオススメします。

Sub 表の作成()

    'A1~B3のセルに実線で境界線を引く
    Range("A1:B3").Borders.LineStyle = xlContinuous
    
    '1行目のセルをイエローに塗りつぶす
    Range("A1:B1").Interior.Color = ColorConstants.vbYellow

    '2行目のセルをマゼンタに塗りつぶす
    Range("A2:B2").Interior.Color = ColorConstants.vbMagenta
    
    '3行目のセルをグリーンに塗りつぶす
    Range("A3:B3").Interior.Color = ColorConstants.vbGreen

End Sub

自動変換を活用してスペルミスを防ぐ

VBAプログラミングでは、アルファベットをすべて入力しなくても自動で入力候補が表示されます。選択肢の中から適切なものを選んでください。

プルダウン選択式を利用することで、スペルミスを防ぐことができます。ただし、すべてのコードが入力候補として表示されるわけではありません。

カラーなどのコード判別方法

セルや文字の色をマクロで指定する際、色のコードを入力しなければなりません。それらを判別するためには、一度「マクロの記録」で任意の色を操作すると良いでしょう。その後、自動で作成されたプログラムを確認することで、カラーコードが判明します。

また、基本の数色であれば、例のように「ColorConstants」と入力することで入力候補の中から選択できます。ケースバイケースで使い分けてください。

日本語翻訳がステップアップの鍵

初心者にとってアルファベットの羅列であるVBAは意味不明かもしれません。少しでも理解を深めるためにも英単語の意味を理解すると効果的です。

  • Range 範囲
  • Borders 境界線
  • LineStyle 線の種類
  • xlContinuous 実線

「Range(“A1:B3”).Borders.LineStyle = xlContinuous」は「A1~A3の範囲に実線で境界線を引く」と翻訳できます。このように英語を解読することがステップアップのコツです。

VBAによるマクロ作成の手順3_
マクロを実行する

サンプルマクロの実行結果

VBAコーディングを終えた後、「Sub ユーザーフォームの実行」ボタンをクリックするか、ショートカットキー「F5」でマクロを実行して動作を確認してください。ただし、マクロを実行すると作業を戻すことはできません。シートをコピーするなどバックアップを取ってから実行すると良いでしょう。

まとめ

人によっては、VBAによるExcel(エクセル)マクロのプログラミングが、敷居が高いと感じる人もいるでしょう。しかし、手順にのっとって操作すれば難しくありません。まずは、「VBE起動~VBA入力~マクロ実行」という操作になれることからはじめてください。

このテーマの関連記事はこちら