【VBA用語】ByRef(参照渡し)とは?
ByRef(参照渡し)は、関数に引数を渡すときに、変数そのものを渡すときに使うキーワードです。
使い方
次のプログラムは、マクロ「Test2」に変数そのものを渡すプログラムです。
Sub Test1()
Dim A As Long
A = 10
Call Test2(A)
Range("A1") = A
End Sub
Sub Test2(ByRef B As Long)
B = B * 10
End Sub
メモ
使い方にあるプログラムの場合、「Test1」は10の値が代入された変数Aを「Test2」に渡しています。
そのため「Test2」で変数Aに入った値は10倍になり、セルA1には「100」が入力されます。
受け取る引数の定義に「ByVal」「ByRef」どちらのキーワードも付けない場合、「ByRef」を付けた場合と同じく、参照渡しになります。
学び方
ByRef(参照渡し)は、VBAの資格「Excel VBA スタンダード」で学ぶことができます。
「Excel VBA スタンダード」の問題集は、以下よりお試しください。
Excel VBA スタンダード 用語問題集