Excel 2016 VBA에서 선택 사례 구조를 사용하는 방법

Excel 2016 VBA에서 선택 사례 구조를 사용하는 방법

Select Case 구조는 Excel 2016에서 세 개 이상의 옵션과 관련된 결정에 유용한 VBA 구조입니다(If-Then-Else 구조에 대한 대안을 제공하는 두 가지 옵션에서도 작동함).

선택 사례 예

다음 예는 케이스 선택 구조를 사용하는 방법을 보여줍니다.

서브 쇼Discount3()
  희미한 수량만큼
  두 배의 희미한 할인
  수량 = InputBox("수량 입력: ")
  케이스 수량 선택
    사례 0 ~ 24
      할인 = 0.1
    사례 25 ~ 49
      할인 = 0.15
    사례 50 ~ 74
      할인 = 0.2
    케이스 >= 75
      할인 = 0.25
  선택 종료
  MsgBox "할인: " & 할인
엔드 서브

이 예에서는 Quantity 변수가 평가되고 있습니다. 루틴은 4가지 다른 케이스(0–24, 25–49, 50–74 및 75 이상)를 확인합니다.

각 Case 문 뒤에는 여러 개의 문이 올 수 있으며 case가 true인 경우 모두 실행됩니다. 이 예에서와 같이 하나의 명령문만 사용하는 경우 VBA 명령문 구분 문자인 콜론이 앞에 오는 Case 키워드와 동일한 행에 명령문을 넣을 수 있습니다. 이렇게 하면 코드가 더 간결해지고 좀 더 명확해집니다. 루틴이 이 형식으로 표시되는 방식은 다음과 같습니다.

서브쇼할인4 ()
  희미한 수량만큼
  두 배의 희미한 할인
  수량 = InputBox("수량 입력: ")
  케이스 수량 선택
    사례 0 ~ 24: 할인 = 0.1
    사례 25 ~ 49: 할인 = 0.15
    사례 50~74: 할인 = 0.2
    사례는 >= 75: 할인 = 0.25
  선택 종료
  MsgBox "할인: " & 할인
엔드 서브

VBA가 Select Case 구조를 실행할 때 VBA가 true 케이스를 찾고 해당 케이스에 대한 명령문을 실행하는 즉시 구조가 종료됩니다.

중첩된 Select Case 예

다음 예에서 설명한 것처럼 Select Case 구조를 중첩할 수 있습니다. 이 루틴은 활성 셀을 검사하고 셀의 내용을 설명하는 메시지를 표시합니다. 프로시저에는 세 가지 Select Case 구조가 있고 각각 고유한 End Select 문이 있습니다.

하위 CheckCell()
  문자열로 희미한 메시지
  IsEmpty(ActiveCell) 대소문자 선택
    사례 참
     메시지 = "공백입니다."
    다른 경우
     케이스 ActiveCell.HasFormula 선택
       사례 참
        Msg = "공식이 있습니다"
       다른 경우
        케이스 IsNumeric(ActiveCell) 선택
          사례 참
           메시지 = "숫자 있음"
          다른 경우
           Msg = "텍스트 있음"
        선택 종료
    선택 종료
  선택 종료
  MsgBox "셀" & ActiveCell.Address & " " & 메시지
엔드 서브

논리는 다음과 같습니다.

셀이 비어 있는지 확인합니다.

비어 있지 않은 경우 수식이 포함되어 있는지 확인합니다.

수식이 없으면 숫자 값이나 텍스트가 포함되어 있는지 확인합니다.

루틴이 종료되면 Msg 변수에 셀의 내용을 설명하는 문자열이 포함됩니다. MsgBox 함수는 해당 메시지를 표시합니다.

Excel 2016 VBA에서 선택 사례 구조를 사용하는 방법

CheckCell 프로시저에 의해 표시되는 메시지입니다.

Select Case 구조를 필요한 만큼 중첩할 수 있지만 각 Select Case 문에 해당 End Select 문이 있어야 합니다.

들여쓰기 코드가 노력할 가치가 있는지 여전히 확신하지 못한다면 이전 목록이 좋은 예가 될 것입니다. 들여쓰기는 중첩 수준을 명확하게 합니다. 들여쓰기 없이 동일한 절차를 살펴보세요.

하위 CheckCell()
문자열로 희미한 메시지
IsEmpty(ActiveCell) 대소문자 선택
사례 참
메시지 = "공백입니다."
다른 경우
케이스 ActiveCell.HasFormula 선택
사례 참
Msg = "공식이 있습니다"
다른 경우
케이스 IsNumeric(ActiveCell) 선택
사례 참
메시지 = "숫자 있음"
다른 경우
Msg = "텍스트 있음"
선택 종료
선택 종료
선택 종료
MsgBox "셀" & ActiveCell.Address & " " & 메시지
엔드 서브

상당히 이해가 되지 않죠?


스마트시트 9.1.1

스마트시트 9.1.1

Smartsheet는 프로젝트를 관리하고, 워크플로를 구축하고, 팀과 협업할 수 있는 동적 작업 플랫폼입니다.

공유 지점

공유 지점

SharePoint는 다양한 워크플로 응용 프로그램, "목록" 데이터베이스 및 기타 웹 구성 요소는 물론 보안 기능을 사용하여 비즈니스 그룹의 공동 작업을 제어하는 ​​웹 기반 공동 작업 시스템입니다.

퍼페추얼 캘린더 1.0.38/1.0.36

퍼페추얼 캘린더 1.0.38/1.0.36

반니엔 캘린더(Van Nien Calendar)는 휴대폰에서 달력 보기 애플리케이션으로, 휴대폰에서 태음태양일을 빠르게 확인하고 중요한 업무를 정리할 수 있도록 도와줍니다.

마이크로소프트 아웃룩 2021

마이크로소프트 아웃룩 2021

Microsoft Outlook은 Microsoft Corporation에서 개발한 비즈니스 및 생산성 응용 프로그램입니다.

클릭업

클릭업

ClickUp은 모든 비즈니스에서 가장 높은 평가를 받는 생산성 플랫폼 중 하나입니다. Google, Booking.com, San Diego Padres 및 Uber와 같은 대기업은 모두 ClickUp을 사용하여 직장 생산성을 높입니다.

PDF-XChange 뷰어 2.5.322.10

PDF-XChange 뷰어 2.5.322.10

PDF는 텍스트 문서를 읽고, 만들고, 보내는 데 일반적으로 사용되는 형식이 되었습니다. 결과적으로 이러한 유형의 문서화에 사용되는 프로그램 수가 증가했습니다. PDF-XChange Viewer는 점점 더 많은 PDF 뷰어 중 하나입니다.

아파치 오픈오피스

아파치 오픈오피스

Apache OpenOffice는 특히 Excel, PowerPoint 및 Word에서 Microsoft 365에 필적하는 완전한 Office 애플리케이션 제품군을 제공합니다. 프로젝트를 보다 효과적으로 관리할 수 있으며 다양한 파일 형식을 지원합니다.

iTaxviewer 1.8.7 다운로드

iTaxviewer 1.8.7 다운로드

iTaxViewer 소프트웨어는 오늘날 가장 널리 사용되는 XML 파일 읽기 소프트웨어입니다. 이 소프트웨어는 국세청의 XML 형식으로 된 전자 세금 신고서를 읽기 위한 애플리케이션입니다.

니트로 PDF 리더

니트로 PDF 리더

Nitro PDF Reader는 대부분의 사람들이 PDF 문서로 매일 수행하는 모든 기본 작업을 다루는 편리한 PDF 편집기입니다.

Foxit 리더 12

Foxit 리더 12

Foxit Reader는 기본적으로 PDF 리더이며 PDF 파일을 생성하고, 서명하고, 편집하고, 주석을 추가할 수도 있습니다. 운영 체제에서 작동하며 Microsoft Office 패키지의 다양한 프로그램에 대한 플러그인이 있습니다.