VBAのモジュールを作成する方法を解説。

システムトレード

「エクセルVBAの基本を覚えたい!」

「VBAのモジュールってどう作るの?」

 

この記事では、このような疑問にお答えします。

 

この記事で解説する内容は、モジュール作成方法プロシージャ作成方法です。

 

まだ、VBAの開発環境の構築をしていない方は、こちらのリンクより開発環境の構築方法をご確認ください。

 

※当サイトではVBAの基本を解説しています。

もし、VBAの基本が分からなければ、下記リンクより基礎を学習できます。

VBAの開発環境の構築方法を解説

②VBAのモジュールを作成する方法を解説(本記事)

VBAのデータ入力方法を解説

VBAの変数について解説

VBAの繰り返し処理について解説

VBAの条件分岐処理について解説

Excelでバックテストする方法。【VBAによるツール開発】

 

マンモス
マンモス

はじめましてマンモスです。
プログラミング知識ゼロからシステムトレードを自作できるようになった経験を活かし、この記事を書いてます。

 

 

VBAのモジュールを作成する方法

プログラムを作成するためには、「プロシージャ」を作る必要があります。

プロシージャとは実行したいプログラムをひとまとめにしたものです。

例えば平均を求めるプログラムを作るとします。

そのためには

①平均を求めるデータを取得する

②全てのデータを合計する

③合計をデータ数で割る

以上の3つの処理が必要になります。

これら3つの処理をひとまとめにしたものがプロシージャとお考えください。

 

プロシージャはモジュールにコードを記載します。

モジュールとはプロシージャを管理する単位であり、1つのモジュールに複数のプロシージャを記載することもできます。

くまさん
くまさん

ぷろしーじゃ?もじゅーる??

マンモス
マンモス

あまり深く考えなくても、モジュールはプログラムを書く場所、プロシージャはプログラム1個分くらいの認識で問題ありません。

 

モジュールの作り方

ツールバーより「挿入」→「標準モジュールの順」でクリックします。

 

 

これで標準モジュールフォルダ内にModule1が作成されました。

※汎用的なプログラムは標準モジュールを使用しますが、ブックやシートに対する特別な命令は「This Workbook」や「Sheet1」などの各シートにプロシージャを作成します。
今の段階では標準モジュールが作れればOKです。

 

プロシージャの構文

作成したモジュールにプロシージャを作ってみましょう。

プロシージャの構文は以下のようになります。

プロシージャ名は次の「命名規則」にそったものならなんでもでOKです。

Sub プロシージャ名()
‘ここに実際の処理を記載する。
End sub

 

VBAの命名規則

プロシージャ名は任意の値でOKです。

ただし、VBAには以下のような命名規則があります。

 

使える文字→英数字(全角/半角)、日本語(漢字含む)、アンダーバー(_)

 

注意点
①先頭に数字、アンダーバー(_)は使えない
②予約語は使えない
(VBAで使用する特定のコードのこと。重複防止のためです。)
③長さは半角255文字まで

 

上記に注意して「sub プロシージャ名(任意の名前)」とだけコードを書いてみましょう。

※subとプロシージャ名の間に空白があることに注意して下さい。
この空白は必須です。

すると、プロシージャ名の横に「()」と「End sub」が自動で表示されます。

また、プロシージャ名以外は小文字/大文字どちらで入力しても自動で適切な形に変換されます。

これはVBEの入力アシスト機能によるものです。

 

くまさん
くまさん

命名規則覚えられない・・・・

マンモス
マンモス

心配無用!!
間違っていればVBEでエラーがでるためすぐに分かります。
とりあえず慣れるまでは「なんかルールがある」程度の認識でOKです。

 

まとめ

プログラムを作成するには、

①モジュールを作成する。

②プロシージャを作成する。

この2つを準備すれば、次はいよいよ実際の処理の記述になります。

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