본문 바로가기

Visual Basic

VB(비주얼 베이직)에서 배열을 매개변수로 넘기기

Private Sub Form_Load()
    Dim tP(1 To 4) As Integer
    Dim i As Integer   

    i = Test(tP)

    Debug.Print tP(1), tP(2), tP(3), tP(4)
End Sub

Private Function Test( ByRef t_arr As Variant ) As Integer
    t_arr(1) = 4
    t_arr(2) = 3
    t_arr(3) = 2
    t_arr(4) = 1
   
    Test = 1
End Function

2가지만 주의하면 됩니다.
배열을 매개변수로 받은 Sub 함수에서 Variant 형으로 선언하는 것과
Integer 는 아니지만 Return 형이 꼭 있어야 합니다.
아무것도 Return을 안해주면 Sub 함수에서 변경한 값이
적용이 되지 않더군요.