이전 글에서 다중 조건 처리 방법에 대해 알아보았습니다. 이번에는 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 프로그램을 작성하기 위해서 Visual Basic Editor를 사용합니다. VBA를 알게 되면 엑셀 업무를 하는 데 있어서 보다 빠르고 편하게 업무를 진행할 수 있습니다. 엑셀의 많은 기능이 있지만
mr-johndoe.tistory.com
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의 배수가 아닙니다.라는 메시지 창이 뜹니다.
'엑셀 > VBA' 카테고리의 다른 글
엑셀 VBA - Function 프로시저 (0) | 2021.09.26 |
---|---|
엑셀 VBA 반복문 For Each...Next문 사용하기 (0) | 2021.09.25 |
엑셀 VBA IF문 다중 조건 처리 & IIF에 대해 알아보기 (0) | 2021.09.24 |
Excel VBA ReDim 사용하지 않고 동적 배열변수 & Type문 사용하기 (0) | 2021.09.21 |
엑셀 VBA 다차원 배열변수 및 동적 배열변수 알아보기 (0) | 2021.09.20 |