ExcelVBAの使い方

ExcelVBA

ExcelVBAとはExcel Visual Basic for Applicationの略で
エクセルを操作するためのプログラム言語です。

この機能はエクセルの標準機能として使える機能で
マクロ(自動処理)をもっと細かく自由に制御するための
プログラミング機能です。

近年、Pythonというプログラミング言語を使ってのエクセル自動化が
流行っていますがExcelVBAはMicroSoftがつくったVisualBasicという
プログラム言語がベースになっていて、プログラミング未経験者でも
とても扱いやすい言語
になっています。

プログラムは初めてという方も一緒に操作していけば
必ず理解できるようになります。

一緒に学習して採取的にはデータベースシステムを作れるように
頑張りましょう!

最初の一歩

まずはExcelVBAでプログラムを作るためのツールである
Visual Basic Editor(VBE)を開いてみましょう!

まずはExcelを立ち上げて上図の画面から空白のブックをクリックしてみましょう!

Excelスタートアップ画面

執筆辞典のExcelの最新バージョンであるExcel2019ではメニューからVisualBasicEditorを
開くメニューが隠れていますので、そのメニューを表示するところから始めます。
もしくはショートカットキーでAltF11をクリックすると簡単に立ち上げられます。
一応下記にメニューの表示方法を載せておきます。

1.ファイルメニューを選択
2.オプションをクリック
3.リボンのユーザー設定をクリックし開発にチェックを入れOKをクリック
4.リボンの開発が表示されたらクリック
5.Visual Basicをクリック
6.Visual Basic Editorが開きました

ここまでの設定をしておくとExcelがリボンの設定を自動的に
保存しておいてくれるので、後々開発がしやすくなります。
初めての方は上記までの設定をしておくことをお勧めします。

お決まりのHello World!!

プログラミング初心者がまず最初に行うプログラミングの決定版!
今回はExcel上の図形をボタンとしてその図形をクリックしたときに
Hello World!!とメッセージが表示されるプログラムを
作っていきましょう!

標準モジュールの作成

標準モジュールとはVBA内で自由に使えるプログラムの集まりと考えてください
初心者の方はそんなに意識する必要はありません
後に説明しますが、標準モジュール、ユーザーフォーム、クラスモジュールがあります
大抵は標準モジュールとユーザーフォームで事足りてしまいます
クラスモジュールは少し上級者がつかうプログラム方法です
後の章で便利な使い方を解説します

では標準モジュールの作成方法です

1.エクセルマークの横のアイコンから標準モジュールを選択
2.標準モジュールが追加されました
3.最大化ボタンを押してモジュールを画面いっぱいにしましょう
4.標準モジュールの追加が完了です

プログラム開始の合図

標準モジュールができたらいよいよプログラムをコーディング(書く)していきます
モジュール内には複数のプログラムを書くことができます
ですので、どういうプログラムなのかを区別するために名前を付ける必要があります
そして一つのプログラムの区切りをプロシージャと呼びます

プロシージャにはVBAでは大きく2種類あります

プロシージャの種類
  • サブプロシージャ
  • ファンクションプロシージャ

この2つを覚えておけばOKです。現段階ではそういうのがあるのか~と
いう程度で問題ありません

この章ではサブプロシージャをつかってHello world!!を作っていきます
ではまず、下記のようにコードを書いてみましょう!

1.Sub Hello_Worldと入力しEnterを押します
2.()の部分とEnd Subの部分はエディターが自動的につけてくれます

VisualBasicのいいところはコードを書くときに
補完機能が働いてくれるところです
文字を途中まで打つと、そのあと使うであろう部分を補完して
コード作成の効率化を図ってくれます
慣れてくるとこの補完が働いていることで自分のコードの構文が間違っていないかを
確認するために利用することができます

構文とはプログラムを書く上でのルールと思ってください
Visual Basicでは【Sub】と【End Sub】で囲まれた部分を
一つのプログラムの区切りとして認識します
こういった構文はいくつもありますが、今後順を追って
説明していきます

では次にメッセージを表示するプログラムを書きましょう!
【Sub】と【End Sub】の間の行に

MsgBox “Hello World!!”

と書き込むだけです

MsgBoxを書き込んだ例

これであなたの最初のプログラムが完成しました!
では早速このプログラムを実行してみましょう!

方法はいくつかありますが、一番簡単な方法はF5キーを押すだけです
その際、カーソル(文字入力の際にチコチコしてるやつ)を
【Sub】と【End Sub】の間のどこかに置いておいてください

実行結果

さて、無事にメッセージは表示されましたでしょうか?

まとめ

初めての方はここまで来るだけでも少ししんどかったかもしれません
しかし、ここさえクリアしてしまえば、もう立派なプログラマーの仲間入りです!
なぜならあなたはプログラムを一つ作ったからです!

この最初の記念すべき第一歩をあなたと一緒に歩めたことを
誇らしく思います。

そして、ここからExcelVBAが持つ可能性を最大限引き出していく
新しい世界に私がご案内いたします!

次回はもう少しレベルアップしてエクセルのセル(一つの枠)の中に
何かを入力するプログラムを作っていきましょう!

それでは最後までご覧いただきありがとうございました!

コメント

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