본문 바로가기
언어 참조

Visual Basic 구문 이해

2023. 7. 28.

도움말을 정리한 내용입니다.

Visual Basic 도움말 주제의 메서드, 함수 또는 문장에 대한 구문은 해당 메서드, 함수 또는 문장을 올바르게 사용하기 위해 필요한 모든 요소를 보여줍니다. 이 주제의 예제들은 가장 일반적인 구문 요소들을 해석하는 방법을 설명합니다.

Activate method syntax

object.Activate

Activate 메서드 구문에서 기울임체로 표시된 "object"는 제공하는 정보를 나타내는 자리 표시자입니다. 이 경우 코드를 통해 객체를 반환하는 코드를 입력해야 합니다. 볼드체로 표시된 단어는 정확히 입력해야 합니다. 예를 들어, 다음 절차는 활성 문서에서 두 번째 창을 활성화하는 것입니다

Sub MakeActive() 
    Windows(2).Activate 
End Sub

MsgBox function syntax

MsgBox (prompt, [ buttons, ] [ title, ] [ helpfile, context ])

MsgBox 함수 구문에서 기울임체로 표시된 단어들은 함수의 이름 있는 인수(named arguments)입니다. 괄호로 둘러싸인 인수들은 선택적입니다. (Visual Basic 코드에서는 괄호를 입력하지 마십시오.) MsgBox 함수의 경우, 반드시 제공해야 하는 인수는 프롬프트에 표시할 텍스트입니다.

함수와 메서드의 인수는 코드에서 위치(position) 또는 이름(name)으로 지정할 수 있습니다. 인수를 위치로 지정하려면, 구문에 제시된 순서를 따라서 각 인수를 쉼표로 구분하여 나열하면 됩니다. 예를 들면 다음과 같습니다.

MsgBox "Your answer is correct!",0,"Answer Box"

인수를 이름으로 지정하려면, 인수 이름 다음에 콜론과 등호 (:=)를 사용하여 인수의 값(value)을 지정하면 됩니다. 이름 있는 인수들은 원하는 순서로 지정할 수 있습니다. 예를 들면 다음과 같습니다.

MsgBox Title:="Answer Box", Prompt:="Your answer is correct!"

함수와 일부 메서드의 구문에서는 인수들이 괄호로 둘러싸여 있습니다. 이러한 함수와 메서드들은 값을 반환하므로, 값을 변수에 할당하기 위해 인수들을 괄호로 둘러싸야 합니다. 만약 반환값을 무시하거나 인수를 전달하지 않는다면 괄호를 포함하지 않습니다. 반환값이 없는 메서드의 경우 인수를 괄호로 둘러싸지 않아도 됩니다. 이러한 지침은 위치로 지정하는 인수나 이름으로 지정하는 인수를 사용하는 경우 모두 적용됩니다.

다음 예시에서는 MsgBox 함수의 반환값을 변수 myVar에 저장하여 선택된 버튼을 나타내는 숫자를 받습니다. 반환값을 사용하므로 괄호가 필요합니다. 그 다음, 변수의 값이 표시되도록 다른 메시지 상자가 나타납니다.(이 예제에서는 Yes를 눌렀습니다)

Sub Question()
    myVar = MsgBox(Prompt:="I enjoy my job.", _
        Title:="Answer Box", Buttons:="4")
    MsgBox myVar
End Sub

Option Compare statement syntax

Option Compare { Binary | Text | Database }

Option Compare 문 구문에서 중괄호와 수직 막대(|)는 세 개의 항목 중에서 반드시 선택해야 하는 것을 나타냅니다. (Visual Basic 문에서는 중괄호를 입력하지 않습니다.) 예를 들어, 다음 문장은 모듈 내에서 문자열을 비교할 때 대소문자를 구분하지 않는 정렬 순서로 비교하도록 지정합니다.

Option Compare Text

Option Compare Text

Sub CompareStrings()
    Dim str1 As String
    Dim str2 As String

    str1 = "Hello"
    str2 = "hello"

    If str1 = str2 Then
        MsgBox "The strings are equal."
    Else
        MsgBox "The strings are not equal."
    End If
End Sub

Dim statement syntax

Dim varname [([ subscripts ])] [ As type, ] [ varname [([ subscripts ])] [ As type ]] . . .

Dim 문의 구문에서, Dim은 필수 키워드입니다. 유일한 필수 요소는 varname(변수 이름)입니다.

예를 들어, 다음 문장은 세 개의 변수 myVar, nextVar, thirdVar를 생성합니다. 이들은 자동으로 Variant 변수로 선언됩니다.

Dim myVar, nextVar, thirdVar

다음 예제에서는 변수를 String 데이터 유형으로 선언합니다. 데이터 유형을 지정하는 것은 메모리를 절약하고 코드에서 발생할 수 있는 오류를 찾는 데 도움이 됩니다.

Dim myAnswer As String

하나의 문에 여러 변수를 선언하려면 각 변수에 대한 데이터 유형을 포함하세요. 데이터 유형 없이 선언된 변수는 자동으로 Variant로 선언됩니다.

Dim x As Integer, y As Integer, z As Integer

다음 문에서 x와 y에는 Variant 데이터 유형이 할당됩니다. z에만 Integer 데이터 유형이 할당됩니다.

Dim x, y, z As Integer

위 문에서 x와 y를 Integer로 선언하는 간략한 표현은 다음과 같습니다.

Dim x%, y%, z As Integer

각 데이터 유형에 대한 간략한 표현은 다음과 같습니다

배열 변수를 선언할 때는 괄호를 사용하여 선언해야 합니다. 첨자(subscript)는 선택 사항입니다. 아래 멍령문은 동적 배열인 myArray의 차원을 지정합니다.

Dim myArray()

'언어 참조' 카테고리의 다른 글

Variant 이해하기  (0) 2023.07.28
상수 선언 및 사용  (0) 2023.07.28
데이터 타입을 효율적으로 사용하기  (0) 2023.07.28
변수 선언  (0) 2023.07.28
Visual Basic 명명 규칙  (0) 2023.07.28