Appia의 IT세상

비주얼베이직(Visual Basic, VBA) 조건문, 분기문 살펴보기(if, elseif, else, switch) 본문

Programming/VisualBasic_VBA

비주얼베이직(Visual Basic, VBA) 조건문, 분기문 살펴보기(if, elseif, else, switch)

Appia 2020. 12. 1. 07:24
반응형

비주얼베이직(Visual Basic, VBA) 조건문, 분기문 살펴보기(if, elseif, else, switch)

비주얼베이직(Visual Basic, VBA) 조건문, 분기문 살펴보기(if, elseif, else, switch)

이번 포스팅에서는 조건문 즉, 분기문이라고 불리우는 조건문에 대해서 이야기를 해볼까 합니다. 먼저 조건문, 분기문이라 주어진 조건에 맞게 각 실행문을 다르게 하는데 있습니다. 간단히 한글로 이야기를 해보겠습니다. 놀이 동산에서 특정 키(140cm) 미만의 아이들에게는 탑승을 금지하는 조건이 있습니다. 그럼, 아이들의 키를 초과하는 아이들에게만 놀이기구를 탑승하게 하는 것입니다. 이와 같이 특정키를 바탕으로 놀이기구 탑승을 허용하는 것 또한 조건문의 일환으로 볼 수 있습니다. 

 

분기문 형식은 크게 5가지 형태로 볼 수 있습니다. 

 

1. if 문 

즉, 특정 조건에 만족하는 경우에만 실행하는 조건문입니다. 예를 들면, 위에서와 같이 특정 키 이상의 아이들만 놀이기구를 탈 수 있게 하는 조건문입니다. 

 

2. if - else 문 

특정 조건에 만족하는 경우와 만족하지 못한 경우 각각 주어진 동작을 실행하게 하는 조건문입니다. 위의 조건에서와 같이 특정키 이상의 아이들은 놀이기구를 탈수 있게하고 그 미만이 아이들에게는 놀이기구 탑승 대신 인형을 선물로 주는 경우입니다. 

 

3. if -elseif - else 문 

여러 조건들을 적용이 필요할 때입니다. 예를 들면, 성이 김씨, 최씨, 이씨, 그리고 나머지 성씨가 조건일 경우 각기 다른 동작을 실행할 수 있게 하는 조건문입니다. 

 

4. switch 문 

switch문의 경우 특정 값들과 동일한 값일 때 동작하게 하는 조건문입니다. 

 

그럼 각 부분에 대해서 살펴보겠습니다. 

 

1. if문 

먼저 간단히 문법을 살펴보면 다음과 같습니다. 

If(boolean_condition) Then

   Statement 1

   .....

   Statement n

End If

위에서와 같이 특정 조건에서 부합하는 경우 실행하게 하는 것입니다. 간단히 예를 들어보겠습니다. 

Private Sub if_example()
   Dim x As Integer
   x = 101
    
   If x > 100 Then
      MsgBox ("x는 100보다 크다")
      
   End If
End Sub

 

위 부분을 적용하면 다음과 같은 결과가 나타납니다. 

if문 예시 실행 결과 

 

2. if - else 문 

특정 조건에 부합할 때눈 If문 아래에, 부합하지 않을 때에는 Else문 아래에 동작들을 입력합니다. 

If(boolean_condition) Then

   Statement 1

   .....

   Statement n

Else

   Statement 1

   ....

   Statement n

End If

그럼 위의 문법에 문합게 예시를 작성해보겠습니다. 

1
2
3
4
5
6
7
8
9
10
11
    Dim x As Integer
    x = 100
    
    If x > 100 Then
        MsgBox ("x는 100보다 크다")
        
    Else
        MsgBox ("x는 100보다 작다")
    
    End If
End Sub
cs

 

위의 결과를 실행하면 다음과 같은 결과가 나타납니다.

If-Else 문 예시 결과 

 

3. if -elseif - else 문 

다중 조건을 수차적으로 확인하는 방법으로 다음 문법을 살펴보겠습니다. 

If(boolean_expression) Then

   Statement 1

   .....

   Statement n

ElseIf (boolean_expression) Then

   Statement 1

   .....    

   Statement n

ElseIf (boolean_expression) Then

   Statement 1

   .....

   Statement n

Else

   Statement 1

   .....

   Statement n

End If

그럼 위의 문법을 적용한 간단한 예시를 적용해보도록 하겠습니다. 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Private Sub if_example()
    Dim x As Integer
    x = 10
    
    If x > 100 Then
        MsgBox ("x는 100보다 크다")
        
    ElseIf x > 50 Then
        MsgBox ("x는 50보다 크다")
    
    Else
        MsgBox ("x는 50보다 작다")
    
    End If
End Sub
cs

위의 예시를 적용하면 다음과 같은 결과가 나타납니다.  

if-elseif-else문 예시 결과 

 

 

4. switch 문 

먼저 switch 문에 대한 문법은 다음과 같습니다. 

Select Case expression

   Case expressionlist1

      statement1

      ....

   Case expressionlist2

      statement1

      ....

   Case expressionlistn

      statement1

      ....   

   Case Else

      elsestatement1

      ....

End Select

위와 같은 형태로 사용할 수 있습니다. 그럼 각 부분에 대해서 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Private Sub switch_example()
   Dim x As Integer
   x = 1
  
   Select Case x
      Case 1
         MsgBox ("1번을 선택하셨습니다.")
      Case 2
         MsgBox ("2번을 선택하셨습니다.")
      Case 3
         MsgBox ("3번을 선택하셨습니다.")
      Case Else
         MsgBox ("어떤것을 선택하지 모르겠습니다.")
   End Select
End Sub
cs

 

위의 예시를 실행하면 다음과 같은 결과가 나타납니다. 

switch 문 예시 결과

 

이번 포스팅에서는 분기문에 비주얼베이직(Visual Basic, VBA) 조건문, 분기문 살펴보기(if, elseif, else, switch)라는 주제로 간단히 살펴봤습니다. 혹 궁금하신 점이나 문의 사항이 있으시면 언제든지 댓글 및 방명록에 글 남겨주시길 바랍니다. 감사합니다. 

반응형
Comments