달력

4

« 2024/4 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
728x90
반응형

 

 

 

[ 엑셀VBA 5 ] 불량관리 프로그램 만들기 - 조건문 Select Case

 

엑셀VBA를 하다보면 여러가지 정해진 조건들을 한꺼번에 지정하려다 보며 중첩 IF문등으로는 한계를

경험하게 되는 데 12개월의 숫자로 받은 데이터를 디스플레이 및 문서를 위해 영문으로 표현한다것나

하는 부분 처럼 다양한 조건을 한가지 조건문으로 표현하기 어려운 경우 사용할 수가 있다.

 

 

예시) 1월 ~ 12월 데이터를 조회시는 숫자로 쓰다가 문서에 표시할때는 영어로 표현하는 예시이다.

 

 

 

     ActiveSheet.Cells(1, 1).Value = Month(Now()) ' 현재시트의 A1번에  현재날짜의 월값을 입력한다. --> 결과 12


     Select Case ActiveSheet.Cells(1 1).Value       '--> A1번시트의 숫자에따라 값을 출력한다.
     Case 1: ActiveSheet.Cells(1, 2).Value = "Jan"  '--> A1번의 값이 1인 경우 "Jan"을 출력한다. 하기는 월별로 영문값을
     Case 2: ActiveSheet.Cells(1, 2).Value = "Feb"        ' 출력한다.
     Case 3: ActiveSheet.Cells(1, 2).Value = "Mar"
     Case 4: ActiveSheet.Cells(1, 2).Value = "Apr"
     Case 5: ActiveSheet.Cells(1, 2).Value = "May"
     Case 6: ActiveSheet.Cells(1, 2).Value = "Jun"
     Case 7: ActiveSheet.Cells(1, 2).Value = "July"
     Case 8: ActiveSheet.Cells(1, 2).Value = "Aug"
     Case 9: ActiveSheet.Cells(1, 2).Value = "Sep"
     Case 10: ActiveSheet.Cells(1, 2).Value = "Oct"
     Case 11: ActiveSheet.Cells(1, 2).Value = "Nov"
     Case 12: ActiveSheet.Cells(1, 2).Value = "Dec"

    Case else                                               '

             msgbox "13이하의 값을 입력"     '--> 현재 입력값이 1~ 12사이의 값이 아니면 값을 입력하라는 메세지를 띄움
     End Select

 

 

여기서 Select Case 구문을 마치는 데 이러한 구조를 이용하면 특정한 경우를 Function으로 만들어 월을 문자로 출력

하는 것이 가능하다.

 

불량율관리 프로그램 만들기 시리즈

 

1. 매크로의 이해

2. 절대참조와 상대참조

3. 조건절 if

4. 반복문 for - next

 

5. 조건문 select case

6. 데이터베이스의 구성

7. 유효성검사를 통한 입력 규칙만들기

8. 이중유효성검사 적용

 

9. 엑셀 데이터베이스 사용설정 적용하기

10. 분석툴 만들기

11. 데이터입력 행삽입 모듈만들기

12. 대용량 DB사용을 위한 SQL함수 알아보기

13. SQL 합수 프로그램에 적용하기

 

 

 

 

728x90
반응형
:
Posted by mapagilove