要点まとめ
Excel VBAで「Call」を使うと、他のプロシージャ(Sub)を呼び出すことができます。単にプロシージャ名を書く方法でも呼び出せますが、「Call」を付けると「これは別のプロシージャを呼び出している」と明示でき、コードが読みやすくなります。
初心者向けポイント
- プロシージャとは?
VBAで「Sub ○○() … End Sub」と書いた処理のまとまりのこと。小さなプログラムの部品です。 - プロシージャの呼び出し方法
方法①:プロシージャ名だけを書く
otherCellSet
VB方法②:「Call」を付けて書く
Call otherCellSet
VB- 違いは?
- 動作は同じ。どちらでも呼び出せる。
- 「Call」を付けると「呼び出しだ」と一目で分かるので、コードの可読性が上がる。
- 後からコードをメンテナンスするときに便利。
- 例:合計を計算して別のセルに書き込む
Sub Test()
Dim sum As Integer
Dim i As Integer
sum = 0
For i = 1 To 10
sum = sum + i
Next i
Range("A1").Value = sum
Call otherCellSet ' ← 別の処理を呼び出す
End Sub
Sub otherCellSet()
Range("A2").Value = Range("A1").Value * 2
Range("A3").Value = Range("A2").Value * 2
End Sub
VB- メリット
- プログラムを小さな部品に分けて整理できる。
- 「Call」を使うと呼び出し部分が分かりやすくなる。
- 初心者でも「ここで別の処理を使っている」と理解しやすい。
まとめ
- 「Call」は必須ではないが、読みやすさのために使うと良い。
- プログラムを部品化して呼び出す練習をすると、VBAがぐっと分かりやすくなる。
次のステップとして、「引数付きプロシージャ」や「関数(Function)」の呼び出しも学ぶと、さらに応用が効くようになります。
