Excel VBA | プロシージャの呼び出し

VBA
スポンサーリンク

では 「引数付きプロシージャ」 を、初心者向けにかみ砕いて、例題を交えて丁寧に説明します。
「数字を自由に渡して計算できる」ようになるので、VBA が一気に便利になります。


引数付きプロシージャとは?

プロシージャに 値を渡して処理させる仕組み のことです。


イメージで理解!

  • お店に「ハンバーガー作って」と頼む → ただのハンバーガーが出てくる
  • お店に「チーズ入りのハンバーガー作って」と頼む → チーズ入りで作ってくれる

👉 この「チーズ入りでお願い!」が 引数(ひきすう)です。

プロシージャにも値を渡すことで、

  • 数字を変えて計算
  • 指定したセルだけ色を変える
  • 指定したメッセージだけ表示する

など、使い回しが効くようになります。


1. 基本の書き方

引数を受け取るプロシージャ

Sub メッセージ表示(msg As String)
    MsgBox msg
End Sub
VB

呼び出し側(値を渡す)

Sub テスト()
    Call メッセージ表示("こんにちは!")
End Sub
VB

結果:「こんにちは!」と表示されます。


2. 実用例:好きな数字を渡して合計する

ステップ1:合計を計算するプロシージャ

Sub 合計を出す(num1 As Long, num2 As Long)
    Range("A3").Value = num1 + num2
End Sub
VB

ここで num1num2引数(もらう値) です。


ステップ2:呼び出して値を渡す

Sub メイン処理()
    Dim a As Long
    Dim b As Long

    a = 10
    b = 20

    Call 合計を出す(a, b)
End Sub
VB

結果

  • A3 に 30 が入ります。

3. さらに分かりやすい実践例

例:指定したセルに好きな文字を入れるプロシージャ

プロシージャ側

Sub 書き込み(セル番地 As String, 値 As String)
    Range(セル番地).Value =
End Sub
VB

呼び出し側

Sub テスト()
    Call 書き込み("B2", "Hello!")
    Call 書き込み("C3", "VBA楽しい!")
End Sub
VB

4. 引数を使うとコードがめちゃ便利になる理由

  • 同じ処理を 何度でも使いまわせる
  • プログラムが 短く・読みやすく なる
  • 後で数値や条件だけ変えたいときに 修正が楽
  • 大きなプロジェクトになっても コードが整理されやすい

初心者が「上達した!」と実感しやすいポイントです。


5. 最後に:Call を付けるメリット

Call 書き込み("A1", "Test")
VB

こう書くと、

  • 「ここはプロシージャ呼び出しだ」と
    一目で分かる

という初心者にはとても大きなメリットがあります。

もちろん、Call を省略しても動作は同じです。

VBA
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました