【初心者向け】動かして学ぶExcel VBA入門(1)

Excel VBA

こんにちは。ECF Tech担当
Michiharu.Tです。

今回より、Excel VBAの連載を開始したいと思います。
プログラム初心者の方向けに、実際に手を動かしながら作っていける楽しい内容を目指したいと思っています。どうぞよろしくお願いいたします。

第1回の今回は、Excel VBAって何?というお話と、Excel VBAの始め方についてです。
それでは早速始めましょう。

対象読者

本連載は次のような方がお読みになることを想定しています。

  • インターネット閲覧など、パソコンの基本操作ができる方
  • Excelの操作経験がある方、基本操作ができる方
  • プログラミング経験のない方

Excel VBAとは

初めにExcel VBAについてです。正しく理解するためには「Excel」と「VBA」に分けるのが適切です。

VBAは「Visual Basic for Applications」の略です。直訳すると「アプリケーションのためのVisual Basic」となります。「Visual Basic」はプログラム言語の1つです。つまり、プログラム言語を使ってアプリケーションを動かすためのしくみが「VBA」なのです。

VBAのメリットは?

VBAでExcel操作のプログラムを書くことで、定型の処理や大量の処理を自動化できることが一番のメリットです。

  • 日次で行っているデータ入力や転記作業
  • 他のデータとの突合せやチェック作業

などの面倒なExcel上の業務があれば、それを一気に実行してくれるプログラムを作成することにより、今まで数時間かかっていた作業が、ボタン1つで終了できるようになる可能性があります。

プログラムを学ぶ道のりは長けれど

つまりExcel VBA学習のゴールは、「Visual Basic」というプログラム言語を学んで、Excelを便利にするプログラムを作れるようになること。 と言えます。なお、この Excel VBAで作成したプログラム「Excelマクロ」 と呼びます。以降、本連載でもこの表現を使用します。

実際に使えるプログラムを自作できるまでの学習の道のりはやや長いですが、最近はChatGPTなどの生成AIも登場しており、プログラムを作ってもらうこともできるようになりました。基本的なことを知っていれば、AIにプログラムを作ってもらえる時代でもあるわけです。そんな今こそVBAの基礎を学んで、業務効率化を目指しましょう!

Excel VBAを動かしてみよう

では早速実践していきましょう。Excel VBAを動かすには、Excelの設定がいくつか必要です。

本記事を作成するにあたり、下記のExcel製品を使って動作確認をしております。
Microsoft® Excel® for Microsoft 365

開発タブの表示

Excel上でVBAのプログラムを書くためには、下図に示す開発タブを表示させる必要があります。

次の手順でExcelの設定を変更します。

  1. ファイルを選択し、左側メニューからオプションを選びます。
    開発タブセット01

  2. 「リボンのユーザー設定」を選択し、右側のウィンドウから「開発」を探してチェックをいれます。
    開発タブセット02

  3. 開発タブが表示されていることを確認します。
    開発タブセット03

セキュリティの設定

次はセキュリティを保持する上で重要な設定を確認しておきましょう。

Excelマクロにはコンピュータウィルスのように動作するものも存在しており、インターネットの任意のサイトからダウンロードしたExcelマクロを含むExcelファイルを開くと、そのような不正なプログラムが動作してしまうこともあるため注意が必要です。

そのため、Excelマクロを含むExcelファイルは基本的にマクロを無効にし、警告を表示する。という設定になっていることを確認します。

それでは確認手順です。

  1. Excelのオプションから「トラスト センター」を選択し、「トラスト センターの設定」をクリックします。
    セキュリティ設定01

  2. 「マクロの設定」を選択し、「警告して、VBAマクロを無効にする」が選択されていることを確認します。されていなければ選択します。
    セキュリティ設定02

Excelマクロを書く

エディタの設定

それではいよいよ、Excelマクロを記述するための準備に入りましょう。

  1. 「開発」タブを選択し、「Visual Basic」のアイコンをクリックします。
    VBA開始01

  2. 画面のようなウィンドウが開きます。このウィンドウを「Visual Basic Editor」と呼びます。Excelマクロのプログラムを書くための専用ツールと考えてください。開いたら「ツール」タブの「オプション」をクリックします。
    VBA開始02

  3. 編集タブの「自動構文チェック」をOFFにし、OKをクリックします。
    VBA開始03

この設定がONになっていると下図のように1行ごとに正しく書けているかのチェックが入ります。エラーを教えてくれる機能ではあるのですが、都度都度入ってしまうとまとまったプログラムを書くときに作業がスムーズに行かないためOFFにしています。
VBA開始エラー例

Excelマクロを書く

では実際にExcelマクロを記述します。

  1. 「挿入」タブから「標準モジュール」をクリックします。
    VBA開始04

  2. 「Module1」が作成され、右側にプログラムを記述できるウィンドウが表示されます。Excelマクロのプログラムは基本的にこのウィンドウ内で書いていきます。

VBA開始05

では実際にプログラムを書いてみましょう。下図のとおりにプログラムを書いてみましょう。
大文字小文字も正しく入力します。

VBA開始06

下のプログラムをコピーして使っていただいてもOKです。

Sub Hello()
    MsgBox "こんにちは!"
End Sub

書けたら、下図のボタンをクリックしてプログラムを実行してみましょう。

VBA開始07

下のような画面が出た場合は、「実行」をクリックしてください。

VBA開始08

下のような画面が出たらプログラムが正しく動作しています。確認ができたら「OK」をクリックしてウィンドウを閉じましょう。

VBA開始09

これで、初めてのExcelマクロの作成と動作に成功しました。おめでとうございます!

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

最後にExcelマクロを含むファイルを保存する場合についてです。Excelマクロを含むファイルは、通常のExcelファイルの形式であるExcelブック形式では保存できません。
名前をつけて保存する際は、下図のようにファイル形式で「Excel マクロ有効ブック(*.xlsm)」を選択するようにします。

というわけで、本日はここまでとさせて頂きたいと思います。最後までお読み頂き、ありがとうございました。次回以降は実際にプログラムを作っていきながら、Excel VBAの基本的な内容をお伝えできればと思っています。ひきつづき、よろしくお願いいたします。

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