이 글은 도움말을 번역한 글입니다.
Sub 및 Function 프로시저 호출
다른 프로시저에서 Sub 프로시저를 호출하려면 프로시저의 이름을 입력하고 필요한 인수 값을 포함하십시오. Call 문은 필수는 아니지만 사용하는 경우 모든 인수를 괄호로 묶어야 합니다.
이해하고 디버깅하기 쉽도록 Sub 프로시저를 사용하여 다른 프로시저를 구성합니다. 다음 예제에서 Sub 프로시저는 Sub 프로시저를 호출하여 해당 인수에 값 56을 전달합니다.그리고 그리고 Message 프로시저를 호출하여 "Time to take a break!" 메시지를 나타내는 메시지 박스를 표시합니다.
Sub Main()
MultiBeep 56
Message
End Sub
Sub MultiBeep(numbeeps)
For counter = 1 To numbeeps
Beep
Next counter
End Sub
Sub Message()
MsgBox "Time to take a break!"
End Sub
둘 이상의 인수가 있는 Sub 프로시저 호출
다음 예제에서는 둘 이상의 인수를 사용하여 Sub 프로시저를 호출하는 두 가지 방법을 보여 줍니다. 두 번째로 호출될 때는 Call 문이 사용되기 때문에 인수 주위에 괄호가 필요합니다.
Sub Main()
HouseCalc 99800, 43100
Call HouseCalc(380950, 49500)
End Sub
Sub HouseCalc(price As Single, wage As Single)
If 2.5 * wage <= 0.8 * price Then
MsgBox "You cannot afford this house."
Else
MsgBox "This house is affordable."
End If
End Sub
함수 프로시저를 호출할 때 괄호 사용
함수의 반환 값을 사용하려면 다음 예제와 같이 함수를 변수에 할당하고 인수를 괄호로 묶습니다.
Answer3 = MsgBox("Are you happy with your salary?", 4, "Question 3")
함수의 반환 값에 관심이 없는 경우 Sub 프로시저를 호출하는 것과 같은 방식으로 함수를 호출할 수 있습니다. 괄호를 생략하고, 인수를 나열하고, 다음 예제와 같이 변수에 함수를 할당하지 마세요.
MsgBox "Task Completed!", 0, "Task Box"
앞의 예제에 괄호를 포함하면 문에서 구문 오류가 발생합니다.
명명된 인수 전달
Sub 또는 Function 프로시저의 문은 명명된 인수를 사용하여 호출된 프로시저에 값을 전달할 수 있습니다. 명명된 인수는 순서에 관계없이 나열할 수 있습니다. 명명된 인수는 인수 이름 뒤에 콜론과 등호(:=)가 오고 인수에 할당된 값으로 구성됩니다.
다음 예제에서는 반환 값이 없는 명명된 인수를 사용하여 MsgBox 함수를 호출합니다.
MsgBox Title:="Task Box", Prompt:="Task Completed!"
다음 예제에서는 명명된 인수를 사용하여 MsgBox 함수를 호출합니다. 반환 값은 변수에 할당됩니다.
answer3 = MsgBox(Title:="Question 3", _
Prompt:="Are you happy with your salary?", Buttons:=4)
도움말 출처
Calling Sub and Function procedures (VBA)
Office VBA reference topic
learn.microsoft.com
'언어 참조' 카테고리의 다른 글
코드에서 괄호 사용 (0) | 2023.08.07 |
---|---|
자동화 이해 (0) | 2023.08.07 |
다른 응용 프로그램 간의 작업 (0) | 2023.08.06 |
재귀 프로시저 만들기 (0) | 2023.08.06 |
조건부 컴파일 이해 (0) | 2023.08.05 |