Select…Case 문은 하나의 변수 값을 여러 조건과 비교하여, 일치하는 조건에 해당하는 코드를 실행합니다. 여러 개의 If…ElseIf 문을 사용하는 것보다 가독성이 높습니다.
Select Case 변수 [Case 값 [,값],… [실행문 1]] [Case 값 [,값],… [실행문 2]] [Case Else [실행문 3]] End Select
변수의 값이 Case 뒤에 오는 값이나 식을 만족하면, 해당 Case 바로 아래에 있는 코드가 실행됩니다.
쉼표(,)를 사용하여 여러 값을 한 번에 지정하거나, Is 키워드와 함께 비교 연산자를 사용할 수 있습니다.
Select Case A Case 1 B = 0 Case 2 B = 2 Case 3, 4, 5, 6 ' 여러 값 중 하나라도 일치할 때 (쉼표 사용) B = 3 Case Is < 1 ' 비교 연산자를 사용하는 경우 (Is 사용) B = 3 Case Else ' 위 조건들에 해당하지 않는 나머지 모든 경우 B = 4 End Select
Select Case는 상단부터 순차적으로 조건을 검사하므로, 범위별 처리에 유용합니다.
Select Case K Case Is < 10 ' 10 미만인 경우 R = 0 Case Is < 40 ' 10 이상 40 미만인 경우 R = 1 Case Is < 80 ' 40 이상 80 미만인 경우 R = 2 Case Is < 100 ' 80 이상 100 미만인 경우 R = 3 Case Else ' 100 이상인 경우 R = 4 End Select
참고: `Select Case` 문은 상단에 위치한 `Case`부터 순서대로 검사하며, 가장 먼저 일치하는 단 하나의 Case만 실행하고 `End Select`로 빠져나갑니다.