책 내용 질문하기
select문 이렇게 하면 왜 결과값이 안나올까요?
도서
2019 시나공 기출문제집 컴퓨터활용능력 1급 실기
페이지
113
조회수
140
작성일
2019-01-02
작성자
탈퇴*원
첨부파일

기출유형 3회 - 문제2. 계산작업 1번에서

사용자정의 함수 만드는 문제있잖아요

 

 

Public Function fn비고(고객코드)

 

Select Case Mid(고객코드, 5, 1)

 

Case "1" Or "2" Or "3"

fn비고 = "우수고객"

 

Case "4" Or "5" Or "6"

fn비고 = "신규고객"

 

Case Else

 

fn비고 = ""

 

End Select

 

End Function



이렇게 하면 모범답안의 결과값과 다르게 나오는데

저 식이 틀린 이유를 알 수 있을까요?
답변
2019-01-02 22:42:07

안녕하세요.

 

Select 문에서 OR 연산자를 사용할 수 없습니다.

 

문자로 인식시켜서 작성하시려면 다음과 같이 따로따로 지정해 주시는 방법도 있습니다.

Select Case Mid(고객코드, 5, 1)
        Case "1"
            fn비고 = "우수고객"
        Case "2"
            fn비고 = "우수고객"
        Case "3"
            fn비고 = "우수고객"
        Case "4"
            fn비고 = "신규고객"
        Case "5"
            fn비고 = "신규고객"
        Case "6"
            fn비고 = "신규고객"                     
        Case Else
            fn비고 = ""
    End Select

 

하지만, 코드가 길어지므로, 교재에서는 숫자로 취급해서 to를 이용해서 작성한 것입니다.

 

좋은 하루 보내세요. 

  • 관리자
    2019-01-02 22:42:07

    안녕하세요.

     

    Select 문에서 OR 연산자를 사용할 수 없습니다.

     

    문자로 인식시켜서 작성하시려면 다음과 같이 따로따로 지정해 주시는 방법도 있습니다.

    Select Case Mid(고객코드, 5, 1)
            Case "1"
                fn비고 = "우수고객"
            Case "2"
                fn비고 = "우수고객"
            Case "3"
                fn비고 = "우수고객"
            Case "4"
                fn비고 = "신규고객"
            Case "5"
                fn비고 = "신규고객"
            Case "6"
                fn비고 = "신규고객"                     
            Case Else
                fn비고 = ""
        End Select

     

    하지만, 코드가 길어지므로, 교재에서는 숫자로 취급해서 to를 이용해서 작성한 것입니다.

     

    좋은 하루 보내세요. 

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