VBA備忘録 3:配列、値渡し(ByVal)

【文字列を配列(リスト)で変数に格納】

⇒Array関数を使用する。要素数は0スタート、変数はvariant型。

Sub test()


Dim name As Variant
Dim str As String
Dim i As Integer

name = Array("山田", "田中", "中山") '文字列(今回は名前)を格納

For i = 0 To 2 'すべての文字列を変数に格納
str = str & name(i) & vbCrLf  '改行コード
Next i


MsgBox str '形成した内容表示
End Sub 

 

 

【他の関数(function),プロシージャ(sub)に変数を渡す】

⇒今回はfunctionで実施

※Byvalの場合(値が変更されない?)ByRef(参照渡し)は今回、割愛

Sub test1()

For i = 1 To 5
'値取得
a = Range("A" & i).Value
b = Range("B" & i).Value

Range("C" & i).Activate
ActiveCell.Formula = testfunc(a, b)  '引数(a)(b)を指定してセルに戻り値を入力
Next i

End Sub

~~~~~~~ 以下 functionプロシージャ部分 ~~~~~~~
Function testfunc(ByVal a As Integer, ByVal b As Integer) As Integer '最後の型は戻り値の型

testfunc = a * b '戻り値を変数(プロシージャ名)に格納

End Function