책 내용 질문하기
SELECT case 구문
도서
[2015] 컴퓨터활용능력 1급 실기
페이지
239
조회수
92
작성일
2015-09-03
작성자
탈퇴*원
첨부파일

부록책 239쪽 3번문제 (2013년 1회액세스)

Private Sub txt할인율_DblClick(Cancel As Integer)
Select Case 수량
Case Is >= 0, Is <= 49
txt할인율 = 0
Case Is >= 50, Is <= 99
txt할인율 = 0.03
Case Is >= 100, Is <= 149
txt할인율 = 0.05
Case Is > 150
txt할인율 = 0.1
End Select
End Sub
로 하니깐

txt할인율이 전부다0%로 나오는데.....

이유가 왜그렇죠?

그리고 정답코드는

Select Case txt수량
Case Is >= 150
txt할인율 = 0.1
Case Is >= 100
txt할인율 = 0.05
Case Is >= 50
txt할인율 = 0.03
Case Else
txt할인율 = 0
End Select이던데

이거말고 다르게쓸순없나요?

if구문에서는 and를 쓸수잇던데 ... 찝찝해서물어봅니다. 그냥외우는게답인가요?

답변
2015-09-06 07:07:33

Case Is >= 0, Is <= 49

이와 같은 방법으로 사용할 수 없습니다.


Select Case txt수량
Case Is >= 150
txt할인율 = 0.1
Case Is >= 100
txt할인율 = 0.05
Case Is >= 50
txt할인율 = 0.03
Case Else
txt할인율 = 0
End Select

이렇게 작성한 이유는 150 이상인 값을 먼저 걸러내고

150이하의 값이 나오면 다음 조건을 확인합니다.

100이상인 값이 들어오면(이미 앞에서 150이상인 값은 걸러졌으므로 149~100 사이의 숫자를 확인 가능합니다.) 할인율을 적용하고

아니면 다음 조건인

50이상인 값을 확인 하겠죠.

이렇게 이미 앞의 조건에서 해당 조건에 맞는 값은 걸러지게 되므로

꼭 >=150 and <100 과 같이 사용할 필요가 없는 것입니다.

좋은 하루 되세요.

  • *
    2015-09-06 07:07:33

    Case Is >= 0, Is <= 49

    이와 같은 방법으로 사용할 수 없습니다.


    Select Case txt수량
    Case Is >= 150
    txt할인율 = 0.1
    Case Is >= 100
    txt할인율 = 0.05
    Case Is >= 50
    txt할인율 = 0.03
    Case Else
    txt할인율 = 0
    End Select

    이렇게 작성한 이유는 150 이상인 값을 먼저 걸러내고

    150이하의 값이 나오면 다음 조건을 확인합니다.

    100이상인 값이 들어오면(이미 앞에서 150이상인 값은 걸러졌으므로 149~100 사이의 숫자를 확인 가능합니다.) 할인율을 적용하고

    아니면 다음 조건인

    50이상인 값을 확인 하겠죠.

    이렇게 이미 앞의 조건에서 해당 조건에 맞는 값은 걸러지게 되므로

    꼭 >=150 and <100 과 같이 사용할 필요가 없는 것입니다.

    좋은 하루 되세요.

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.