基本の構文の書き方~Subプロシージャ書き方
前回の復習~Subプロシージャの基本構文~
Sub プロシージャ名()
プログラムの内容
End Sub()
前回VBAの基本の構文としてSubプロシージャを紹介しました。今回はSubプロシージャ内のプログラムの内容の部分の解説をしていきたいと思います
Sub プロシージャ名()
プログラムの内容
End Sub()
ステートメントとは
Sub プロシージャ名()
プログラムの内容 “ステートメント”の集まり
End Sub()
プログラムのひとかたまりの事を「プロシージャ」と呼ぶことを前回確認しましたが、プログラムの内容について触れていきたいと思います。

複数のステートメントの集まりでプロシージャが出来ていて、さらに複数のプロシージャで1つのマクロが出来ています。
VBAのあらゆる処理の最小単位の命令文の事をステートメントと呼びます。
ステートメントは英語の文法のように複数行で構成されるものと、動詞のように1単語で意味を成しているものがあります。
ステートメントの種類 / よく使うステートメント
良く使うステートメントをタイプ毎に紹介します。
ステートメント名 | 用途 |
---|---|
Dim | 変数の宣言時 |
Set | オブジェクトの代入時 |
Const | 定数を定義する際 |
ステートメント名 | 用途 |
---|---|
If ~ then | 条件分岐 |
Select Cace | 条件分岐 |
ステートメント名 | 用途 |
---|---|
For…next | 指定した回数処理を繰り返し |
For Each…Next | コレクションや配列内を順番に処理を繰り返す |
Do While | 条件が合っている間処理を繰り返し |
Do Untile | 条件が合わなくなるまで処理を繰り返し |
ステートメント名 | 用途 |
---|---|
Exit Sub | 処理を途中で抜ける |
Call | 他のプロシージャを呼び出す |
With ~ End Eith | コードの簡略化 |
変数と型について
変数とは
ステートメントと一緒に使用するのが「変数」です。
プログラム内でよく行う作業としてセル内に入力している数字を取得して、プログラム内の計算式に利用したい時があります。
その時に取得した数字を毎回【~のセルに入ってる値】と呼び出して利用するより、【ValueA1】等名前を付けちゃった方が楽だから名前付けましょう。と言った仕組みです。
変数名の規則
変数名の決め方もルールがあります。前回お伝えしたプロシージャ名の決め方と一緒です。後で読み返した時わかりやすい名前を付ける事をおススメします。
データ型とは
変数を使用する際に型というしくみを理解する必要があります。データ型とは、変数のタイプを示すものです。下記がVBAのデータ型の種類です。沢山種類があります。変数に何の値を入れるかによって適しているデータ型のタイプを自分で指定する必要があります。全部覚える必要はないので、種類と担当が決まっている事を確認してください。良く利用するのが、「String」「Long」「Double」です。
データ型の種類 | サイズ | 説明 |
---|---|---|
String | 10バイト~ | 文字列担当。 |
Integer | 2バイト | -32,768~32,767の整数担当。 |
Long | 4バイト | ‐2,147,483,648~2,147,483,647の整数担当。 |
Double | 8バイト | 倍精度浮動小数点数。 |
Boolean | 2バイト | TrueとFalse担当。 |
Date | 8バイト | 日付担当。 |
Object | 4バイト | オブジェクト担当。 |
Variant | 16バイト | なんでも屋さん |
変数の宣言
変数を使用する際、「こんな変数使います 」と告知が必要になります。それを変数の「宣言」と言います。
変数に値を入れる
変数に初期値を設定する際の方法です。【変数名=値】で変数に値を代入できます。
一旦試してみる
一旦標準モジュールに下記コードを入れて確認してみましょう

Sub test6()
Dim a As Long 整数型の変数の宣言
a=255 aに255を入れる
Range(“A1).Value=a A1セルにaを入れる
End Sub
書いたコード内で【F5】キーを押してください。マクロが実行されてA1に255が入力されます。
※F5はマクロの実行のショートカットキーです。今後良く使うので覚えておきましょう
整数型のLongの変数aに”yukimama”という文字列を入れて実行しようとすると、Microsoft Visual Basicの実行時エラーのアラートが出ます。エラー内容も型が一致しません。とエラー理由を教えてくれます。

- ステートメント…プログラム内の最小単位の命令文の事
- プロシージャ…プログラムのひとかたまり(ステートメントの集まり)
- 変数…プログラム内で再利用したいデータに名前を付けて管理する仕組み
- データ型…変数をタイプ毎に分ける指標
用語が多くて大変ですが、使っていく内に何となく役割が分かるようになります。
今後の学習を通して理解を深めていきましょう
最後まで読んでいただきましてありがとうございます