基本の構文の書き方~Subプロシージャ書き方

前回の復習~Subプロシージャの基本構文~

Sub プロシージャ名()
プログラムの内容
End Sub()

前回VBAの基本の構文としてSubプロシージャを紹介しました。今回はSubプロシージャ内のプログラムの内容の部分の解説をしていきたいと思います

Sub プロシージャ名()
プログラムの内容
End Sub()

ステートメントとは

Sub プロシージャ名()
プログラムの内容 “ステートメント”の集まり
End Sub()

プログラムのひとかたまりの事を「プロシージャ」と呼ぶことを前回確認しましたが、プログラムの内容について触れていきたいと思います。

VBAステートメント図解

複数のステートメントの集まりでプロシージャが出来ていて、さらに複数のプロシージャで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」です。

データ型の種類サイズ説明
String10バイト~文字列担当。
Integer2バイト-32,768~32,767の整数担当。
Long4バイト‐2,147,483,648~2,147,483,647の整数担当。
Double8バイト倍精度浮動小数点数。
Boolean2バイトTrueとFalse担当。
Date8バイト日付担当。
Object4バイトオブジェクト担当。
Variant16バイトなんでも屋さん

変数の宣言

変数を使用する際、「こんな変数使います 」と告知が必要になります。それを変数の「宣言」と言います。

変数の宣言:Dim 変数名 [As データ型] ※ [] 内は省略可 省略した場合はVariant型

例) Dim i As long (整数型のiと言う変数使いますという事)

変数に値を入れる

変数に初期値を設定する際の方法です。【変数名=値】で変数に値を代入できます。

変数への値の設定方法: 変数名  値

例1) Dim i As Long 変数の宣言
   i = 500    変数iに”500″を入れます

例2) Dim Name As String 変数の宣言
Name = “yukimama” 変数Nameに”yukimama”を入れます

※変数に文字列を代入する際はダブルクォーテーションに挟みます。
Name=”文字列”

一旦試してみる

一旦標準モジュールに下記コードを入れて確認してみましょう

test6用コード画像

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の実行時エラーのアラートが出ます。エラー内容も型が一致しません。とエラー理由を教えてくれます。

test6_02用コード
まとめ
  • ステートメント…プログラム内の最小単位の命令文の事
  • プロシージャ…プログラムのひとかたまり(ステートメントの集まり)
  • 変数…プログラム内で再利用したいデータに名前を付けて管理する仕組み
  • データ型…変数をタイプ毎に分ける指標

用語が多くて大変ですが、使っていく内に何となく役割が分かるようになります。
今後の学習を通して理解を深めていきましょう

最後まで読んでいただきましてありがとうございます