본문 바로가기

엑셀/VBA

엑셀 VBA Switch 함수 & Select Case에 대해 알아보기

반응형

이전 글에서 다중 조건 처리 방법에 대해 알아보았습니다. 이번에는 Switch 함수에 대해 알아보고 VBA 조건문 중에서 IF 조건문 외에 Select Case 조건문에 대해 알아보고자 합니다.

 

엑셀 VBA IF문 다중 조건 처리 & IIF에 대해 알아보기

 

엑셀 VBA IF문 다중 조건 처리 & IIF에 대해 알아보기

이전 글에서 IF 문에 대해서 알아보았습니다. IF 문은 조건을 여러 가지 줄 수 있는데 이번에는 다중 조건을 주는 방법에 대해 알아보겠습니다. VBA 조건문인 IF에 대해 알아보자 VBA 조건문인 IF에

mr-johndoe.tistory.com

 

 

 

 

1. Switch 함수

Switch 함수 주어지는 조건에 따라 실행되는 실행문을 적용하여 실행하도록 하는 함수로 이전 글에서 봤던 ElseIf와 동일하게 실행됩니다.

 

사용 방법은 다음과 같습니다.

 

     Switch ( 조건문 1, 반환값 1, 조건문 2, 반환값 2, ... , 조건문 n, 반환값 n )

 

조건문 1이 참이면 반환값 1을 반환하고, 조건문 1이 거짓이면 조건문 2의 값을 확인하며 참이면 반환값 2를 반환합니다. 이런 방식으로 각 조건문의 값이 참인지 거짓인지를 확인하고 참일 경우 해당 반환값을 반환합니다.

 

 

2. Select Case 조건문

Select Case 조건문은 Case 뒤에 오는 조건문이 참일 경우 해당되는 실행문이 실행됩니다. ElseIf 문을 사용할 때보다는 간결하게 조건문을 구성할 수 있습니다.

 

Select Case 조건문 사용 방법은 다음과 같습니다.

 

     Select Case 조건문 대상

              Case 1 조건문 1

                       실행문 1

              Case 2 조건문 2

                       실행문 2

                       :

                       :

              Case n 조건문 n-1

                       실행문 n-1

              Case Else

                       실행문 n

     End Select

 

Select Case 조건문 대상은 조건문의 비교 대상을 말하며, 조건문은 실행 조건으로 변수 또는 조건식을 정의합니다. 조건문 1부터 조건 n-1까지에서 변수의 값이나 조건식의 값과 일치하는 조건을 찾아 그에 해당하는 Case 문의 실행문이 실행됩니다. 그리고, 일치하는 조건이 없는 경우 실행문 n을 실행합니다.

 

 

 

 

3. 예제로 알아보기

 예제를 통해 Switch 문과 Select Case 조건문에 대해 좀 더 자세히 알아보겠습니다.

 

엑셀 메뉴에서 VBE 창을 엽니다. 그리고 모듈을 생성합니다. VBE 창 여는 방법과 모듈 생성 방법은 아래 링크의 이전 글을 참조하시기 바랍니다.

 

엑셀에서 VBA 프로그램 작성하기

 

엑셀에서 VBA 프로그램 작성하기

엑셀에서 VBA 프로그램을 작성하기 위해서 Visual Basic Editor를 사용합니다. VBA를 알게 되면 엑셀 업무를 하는 데 있어서 보다 빠르고 편하게 업무를 진행할 수 있습니다. 엑셀의 많은 기능이 있지만

mr-johndoe.tistory.com

 

VBA 프로그래밍을 위한 기본 사항 확인하기 I

 

VBA 프로그래밍을 위한 기본 사항 확인하기 I

VBA에 대해 여러 가지 글을 쓰다가 기본 사항들을 집고 넘어가는 것이 좋을 것 같아서 VBA 프로그래밍 기본 사항들을 확인해보고자 합니다. 매크로를 기록해보면 자동으로 입력되는 Sub 프로시저

mr-johndoe.tistory.com

 

모듈 코딩 창에 아래와 같이 입력합니다.

 

   Public Sub Samp()
      Dim j As Boolean

      j = Switch(Range("C3") = 0, True, Range("C3") = 1, False)

       Select Case j
           Case j = True
               MsgBox ("2의 배수입니다.")
           Case Else
               MsgBox ("2의 배수가 아닙니다.")
       End Select
   End Sub

 

위의 코드를 실행하시기 전에 엑셀 시트의 C3 셀에 임의의 정수를 입력합니다. 그러고 나서 코드를 실행하면 입력하신 정수를 2로 나눈 나머지 값이 0이면 2의 배수입니다.라는 메시지 창이 뜨고 그렇지 않으면 2의 배수가 아닙니다.라는 메시지 창이 뜹니다.

 

반응형

<--! 네이버 애널리틱스 시작작--> <--! 네이버 애널리틱스 끝끝-->