目次
マクロとは?
マクロは作業を自動実行するための手順書
例えば、手動でエクセルシートの初期化を行う場合、4つの操作を行います。
この4つの操作を自動実行する機能のことをマクロと呼びます。
マクロの正体はVBAコード
VBAコードの書き方
書き方の基本
何に対して何をするかをコードで記述します。
処理の構成
処理の構成は、大きく分けると「順次処理」「条件分岐処理」「繰り返し処理」の3種類となります。
順次処理
マクロを実行すると、コードの記述した処理が上から順番に実行されます。そのため、コードは処理を行いたい順番に上から記述します。これを「順次処理」といいます。
「処理1」「処理2」のコードを実行する順番に記述します。
条件分岐処理
条件判断のコードを加えることにより、マクロの処理を途中で分解することができます。これを「条件分岐処理」といいます。
条件判断のコードを記述し、「処理1」のコードは条件を満たす場合のコードを記述する箇所に、「処理2」のコードは条件を満たさなさい場合の箇所に、それぞれ記述します。
繰り返し処理
同じ処理を繰り返すことができます。これを「繰り返し処理」といいます。
条件判断のコードを記述し、「処理1」のコードは条件を満たす場合に記述します。
条件を満たす間は「処理1」が繰り返し実行されます。
VBAコードの構造
コードの作成場所や構成など、コードの記述に必要な基本項目をご紹介します。
最も基本的な用語は、「モジュール」「ステートメント」「オブジェクト」「プロパティ」「メソッド」です。
コードの作成場所
Excelでは、「VBE」というソフトを使ってマクロを作成します。
VBEは、Excel標準で付属しています。
ステートメントとは、1行の命令文
処理を実行させる命令文を1行ずつ記述します。
この一つひとつの命令文を「ステートメント」といいます。
プロシージャとは、ひとまとまりの処理
プロシージャとは、コードによって実現されるひとまとまりの処理です。
主なプロシージャの種類は「Subプロシージャ」「Functionプロシージャ」「イベントプロシージャ」の3種類です。
プロシージャの種類 | 表示例 |
Subプロシージャ | 「Sub」で始まるプロシージャ。 |
Functionプロシージャ | 「Function」で始まるプロシージャ。オリジナルの関数に利用される。 |
イベントプロシージャ | 「ブックを閉じるとき」や「シートを選択したとき」のように、ある状態になったときをきっかけに自動実行されるプロシージャ。 |
オブジェクトとは、操作の対象となるもの
操作の対象 | オブジェクト名 |
ファイル(ブック) | Workbookオブジェクト |
ワークシート | Worksheetオブジェクト |
セル | Rangeオブジェクト |
オブジェクトの記述例(ピンク部分がオブジェクト)
使用例:Range("A1").Value
意味 :セル「A1」の値
使用例:Worksheet("Sheet1").Select
意味 :ワークシート「Sheet1」を選択する
オブジェクトは親子関係の階層構造を持つ
プロパティとは、オブジェクトの「属性」
Rangeオブジェクトの属性 | プロパティ |
内容 | Value |
名前 | Name |
数式 | Formura |
プロパティの記述例(ピンク部分がプロパティ)
使用例:Range("A1").Value
意味 :セル「A1」の値
使用例:Range("A1:C5").Name
意味 :セル「A1~C5」の名前
メソッドとは、オブジェクトの「動作」
Rangeオブジェクトの動作 | メソッド |
選択する | Select |
コピーする | Copy |
データを削除する | ClearContents |
メソッドの記述例(ピンク部分がメソッド)
使用例:Range("A1").Select
意味 :セル「A1」を選択する
使用例:Range("A1:C5").Copy
意味 :セル「A1~C5」をコピーする
最後まで読んでいただき、ありがとうございました!