Excel VBA これだけは押えておきたい基本事項

実は普段お使いのExcelにプログラム機能が含まれているのはご存じでしょうか?

今回はExcelにデフォルトで備わっている、Excel VBAと呼ばれるプログラム言語を始めるにあたって、これだけは押さえておきたい基本事項をまとめて紹介させて頂きたいと思います。

開発環境構築も非常に簡単ですので、プログラムの敷居としては非常に低く、初心者の方にもお勧めの言語です。

学べる事!
この記事を読んで何が出来るようになる?
  • Excel VBAを使うにあたって知っておいた方が良い基本事項が学べる。
  • プログラムを記述するための編集画面の見方が分かる。
目次

Excel VBAを始めるには?

Excel VBAの環境構築

ほぼ全てのプログラミング言語を学ぶ上で、多くの初心者の方が躓くであろう開発環境の構築ですが、Excel VBAにおいては非常に簡単です。

Excelがインストールされている時点で、プログラムとしては既にお使いのパソコン内にインストール済みです。

後は開発環境がデフォルトでは非表示となっているため、表示をしてあげるだけで実は完了してしまいます。

もし開発環境の設定が完了済みでない方はこちらの記事を参考にしてください。
(開発環境をより快適にするための方法も併せて紹介をさせて頂いております。)

Excel VBA これだけは押さえておきたい基本事項

Excel VBAを使用するとファイル形式が異なる

通常はExcelのファイルを保存する際は、「Excelブック(*.xlsx)」などのファイル形式を選択されるかと思います。

しかし、Excel VBAをExcelで使うには専用のファイル形式に設定する必要があります。

ファイル形式

拡張子

Excel VBA

バージョン

Excelマクロ有効ブック

(*.xlsm)

使用可能

Excel 2007~

Excel 97-2003ブック

(*.xls)

使用可能

Excel 97 ~ Excel 2003

Excel ブック

(*.xlsx)

使用不可

Excel 2007~

Excel VBAを使用する際はマクロの有効化が必要

プログラムを作成する際は特に問題は無いのですが、2回目以降ファイルを開く際にExcelのセキュリティの設定上、警告が出てマクロを無効化されてしまいます。

Excelを2回目以降起動した際は、下記画像の「コンテンツ有効化」を選択してマクロを有効化した上でお使いください。

トラストセンターより常に有効にする方法もありますが、セキュリティ上お勧めしません。

Excel VBAの編集画面(VBE)の見方

Excel VBAを編集するための開発環境はVBE(Visual Basic Editor)と言います。

VBEの簡単な使い方とそれぞれの機能について順番に紹介していきます。

VBEの表示のさせ方

Excel上の「開発」タブの一番左「Visual Basic」を選択すると表示がされます。

STEP
VBEの全体像を見てみましょう。

見慣れない画面のため、ごちゃごちゃしていて非常に分かりずらいかと思います。

これから順番にそれぞれの概要をざっくりと紹介していきます。

STEP
画面左側「プロジェクトウィンドウの紹介です。

「プロジェクトウィンドウ」でExcel VBAのプログラムを記述する対象を選択が出来ます。

例えばExcelのシートが2つ以上あった場合、特定のシートだけにプログラムを組み込んだり、またはExcelのブック全体に組み込んだり自由に選択が可能です。

  • 下の画像では「Sheet1(Sheet1)」を選択しているため、Sheet1のシートへプログラムを記述しようとしています。
  • 「ThisWorkbook」を選択した場合は、Excelのブック全体にプログラムが記述が可能です。
STEP
画面右側の「コード」ウィンドウの紹介です。

STEP1で紹介した通り、現在はSheet1にプログラムを記述するための場所が表示されています。

デフォルトで記述されているのは

STEP
画面上部2段目の「ツールバー」の紹介です。

アイコンがいくつか並んでいるかと思います。すべての機能を紹介すると長くなってしまうので、簡単に主要なアイコンを紹介していきます。

アイコン

機能

ショートカット

プログラムを実行。

F5

プログラムをリセット。

なし

プロジェクトウィンドウを表示。

Ctrl+R

プロパティウィンドウを表示。

F4

インデント

Tab

Shift+Tab

コメントブロック

なし

Excel VBAでのライブラリ追加方法

ライブラリとは他の人が既に作ってくれているプログラムの詰め合わせパックみたいなものです。プログラムを作成する際に、すべて1から作っていてはいくら時間があっても足りません。

もし他の誰かが既に作っているプログラムがあるなら、そのプログラムを基に自分が追加したい機能を追加する方が時間の短縮にもなり非常に楽です。

Excel VBAではライブラリを追加する際には、参照設定と呼ばれる設定を実施する必要があります。

参照設定を行いたいときはこちらの記事を参考にしてみください。

Excel VBAのプロジェクトウィンドウについて

プログラミング初心者の方に向けて、それぞれの項目の最初に簡単な概要を紹介しています。既に知っている方は読み飛ばして頂ければ幸いです。

Excel VBAのユーザーフォームについて

ユーザーインターフェース(人が操作する画面)を自作することが出来ます。

STEP
「プロジェクト」ウィンドウを右クリックする。
STEP
「挿入」を選択する。
STEP
「ユーザフォーム」を選択する。
STEP
「フォーム」フォルダに「UserForm1」が挿入されていることを確認する。

Excel VBAのモジュールについて

プログラムのコード行数が1000行、10000行と、どんどん長くなってしまったとき、何処に何が書かれているか非常に分かりづらくなってきます。そんな時に便利なのがモジュールとなります。

プログラム全体としては10000行あったとしても、例えばモジュールを20個用意して、それぞれのグループで500行ずつに分けてあげると、プログラム全体を見やすくすることができます。

モジュールの分け方は人それぞれですが、プログラム内の特定の機能に分けるとプログラム全体の可読性が上がり、管理もしやすくなります。

STEP
「プロジェクト」ウィンドウを右クリックする。
STEP
「挿入」を選択する。
STEP
「標準モジュール」を選択する。
STEP
「標準モジュール」フォルダに「Module1」が挿入されていることを確認する。

Excel VBAのクラスについて

クラスを使うことによってプログラムのメンテナンス性が良くなり、機能の修正や追加も容易となります。(クラスがどのようなものか興味があればクリックしてみてください。)

クラスについてはプログラミング言語の独特な考え方なので、深く考えずプログラムの世界にはそんなものがあるんだ程度に読み流して頂ければと思います。

例題を使って大雑把に紹介をさせて頂きます。

ある診察所で患者のAさん、Bさん、Cさんという人が居たとして、それぞれの人に対して、体重、身長、性別をプログラムで管理をしたいとします。

現実ではそんな不便な方法で管理をしないかと思いますが、プログラムの世界では1つの記録用紙に1つの情報しか入れることが出来ません。

つまりそれぞれの患者に対して、体重、身長、性別を1つ1つ記録用紙に用意する必要があります。(Aさんの体重、Bさんの体重、Cさんの体重、Aさんの身長、Bさんの身長…)

このルールに従うと3人×3項目で合計9つの記録用紙を準備する必要があります。

これではとてもではありませんが管理が大変です。

そこで登場するのがオブジェクトと呼ばれる概念です。

今までは、「Aさんの体重が書かれた記録用紙」、「Aさんの身長が書かれた記録用紙」、「Aさんの性別が書かれた記録用紙」と別々で管理されていたものを、オブジェクトを使えば、「Aさんの診断書(体重・身長・性別)」といったような管理の仕方ができるようになります。

そしてこの「診断書(体重・身長・性別)」のような予め決めたフォームを作れるのがクラスとなります。

予め決められた診断書を作っておけば、新しい患者さんが来た時でもその診断書の用紙を新しくするだけで同じような管理が出来ます。

このように複数の変数や操作を定められたルール通りに管理できるのがクラスとなります。

STEP
「プロジェクト」ウィンドウを右クリックする。
STEP
「挿入」を選択する。
STEP
「クラスモジュール」を選択する。
STEP
「クラスモジュール」フォルダに「Class1」が挿入されていることを確認する。

削除方法について

STEP
削除したい対象を右クリックする。
STEP
「〇〇〇の解放」を選択する。

下記の画像ではClass1のクラスを削除。

STEP
削除する前の警告が出るので確認する。

下記の選択肢から任意のものを選ぶ。

  • 「はい」 対象をエクスポートして削除。
    (エクスポートしたファイルは別のExcelへのインポートが可能となります。)
  • 「いいえ」 何もせずに削除。
  • 「キャンセル」 何もせずに元に戻る。

最後に

お疲れさまでした!今回はExcel VBA において、これだけは押えておきたい基本事項方法をまとめて紹介させて頂きました。

Excel VBAを始める敷居は非常に低いため、是非これを機会にプログラミングにチャレンジしてみては如何でしょうか。

お疲れ様でした!
まとめ

Excel VBAのこれだけは押させておきたい基本事項

  • Excel VBAを使うとファイル形式が変わる。
  • 起動時にマクロの有効化設定が必要になる。
  • Excel VBAの編集画面(VBE)の見方について。
  • ユーザフォーム、モジュール、クラスについて。
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次