책 내용 질문하기
컴퓨터활용능력 1급 실기 엑셀 질문
도서
2018 시나공 기출문제집 컴퓨터활용능력 1급 실기
페이지
150
조회수
471
작성일
2018-12-11
작성자
탈퇴*원
첨부파일

채점프로그램에서 차트 눈금이 틀렸다고 나오는데 제가 보기엔 눈금 표시되지 않도록 한 거 같은데.....

 

왜 틀렸다고 하는 지 모르겠어요 ㅠㅠ

 

그리고 149쪽에 사용자 정의 함수 정답 식이 이해가 안되요 ㅠㅠ

 

그냥 외워야 한다고 해도 이해가 안가니까 외워지지도 않네요 ㅠㅠ

 

설명 부탁드려도 될까요??  

답변
2018-12-11 23:49:02

안녕하세요.

 

기본 가로 눈금선이 '없음'으로 지정되어 있지 않아 감점된 것입니다.

 

아래 그림은 첨부해 주신 파일의 주 눈금선을 확인한 것입니다. '없음'으로 선택해 주셔야 정답으로 채점됩니다.

 


사용자 정의 함수

 

If Mid(제품명, Len(제품명) - 4, 3) * 1 >= 100 Then

        For a = 1 To Mid(제품명, Len(제품명) - 4, 3) / 100

        fn비고 = fn비고 & “■”       

        Next a

Else

        fn비고 = “”   

End If


 

Mid(제품명, Len(제품명) - 4, 3) * 1

MID 함수는 문자열 함수로 결과값이 문자로 반환됩니다.

숫자일 경우에도 텍스트 형식의 숫자인 겁니다. 텍스트 형식의 숫자를 수치 데이터인 숫자로 변환해 주기위해 *1을 하는 것입니다.

 

제품명 중 첫번째에 있는 c3 셀의 값을 직접 넣어 계산해 보겠습니다.

c3 셀의 값 '건웅 로딘정 100mg'에서 LEN 함수를 이용하여 전체 글자수를 구하면 12이고,

여기에서 4를 빼면 8이 됩니다.

그럼 mid(제품명,8,3)이 되고, "건웅 로딘정 100mg"에서 8번째부터 3글자를 가져오면 100이 됩니다.

 

즉, 뒤에서 세글자만 불러오게 되는 거죠...

즉, len(제품명)-4를 하는 이유는 제품명에서 중간에 있는 숫자의 시작 위치를 구하기 위해 작성한 것입니다.

 

For a = 1 To Mid(제품명, Len(제품명) - 4, 3) / 100

a는 변수로 변하는 값을 저장합니다. 1부터 Mid(제품명, Len(제품명) - 4, 3) / 100 의 계산 값까지 변합니다.

For 문이 Next 문을 만나 한 바퀴 돌면 1씩 증가하게 되죠.

변수 이름은 임의로 지정 가능합니다.

 

Next a

For문을 실행하다가 Next를 만나면

다시 For문으로 돌아가고 변수 a는 다음 값인 1 증가된 값을 가지고 For문이 실행됩니다.

 

For문으로 돌아갔는데, 증가된 a가 Mid(제품명, Len(제품명) - 4, 3) / 100 값보다 커지면 For문이 종료됩니다.

 

 

 

For문을 도는 동안 코드의 변화는 다음과 같습니다.

 

 

fn기타 = fn기타 & "■"

a가 1일때 실행하면 아무것도 입력되어 있지 않은 fn기타의 값과 "■"를 연결하여 fn기타에 넣으므로, fn기타에는 "■"가 들어가 있습니다.

a가 2일때 실행하면 fn기타에 입력되어 있던 "■"에 "■"를 연결하여 fn기타에 저장하므로 "■■"가 됩니다.

a가 3일때 실행하면 fn기타에 입력되어 있던 "■■"에 "■"를 연결하여 fn기타에 저장하므로 "■■■"가 됩니다.

 

좋은 하루 보내세요. 

  • 관리자
    2018-12-11 23:49:02

    안녕하세요.

     

    기본 가로 눈금선이 '없음'으로 지정되어 있지 않아 감점된 것입니다.

     

    아래 그림은 첨부해 주신 파일의 주 눈금선을 확인한 것입니다. '없음'으로 선택해 주셔야 정답으로 채점됩니다.

     


    사용자 정의 함수

     

    If Mid(제품명, Len(제품명) - 4, 3) * 1 >= 100 Then

            For a = 1 To Mid(제품명, Len(제품명) - 4, 3) / 100

            fn비고 = fn비고 & “■”       

            Next a

    Else

            fn비고 = “”   

    End If


     

    Mid(제품명, Len(제품명) - 4, 3) * 1

    MID 함수는 문자열 함수로 결과값이 문자로 반환됩니다.

    숫자일 경우에도 텍스트 형식의 숫자인 겁니다. 텍스트 형식의 숫자를 수치 데이터인 숫자로 변환해 주기위해 *1을 하는 것입니다.

     

    제품명 중 첫번째에 있는 c3 셀의 값을 직접 넣어 계산해 보겠습니다.

    c3 셀의 값 '건웅 로딘정 100mg'에서 LEN 함수를 이용하여 전체 글자수를 구하면 12이고,

    여기에서 4를 빼면 8이 됩니다.

    그럼 mid(제품명,8,3)이 되고, "건웅 로딘정 100mg"에서 8번째부터 3글자를 가져오면 100이 됩니다.

     

    즉, 뒤에서 세글자만 불러오게 되는 거죠...

    즉, len(제품명)-4를 하는 이유는 제품명에서 중간에 있는 숫자의 시작 위치를 구하기 위해 작성한 것입니다.

     

    For a = 1 To Mid(제품명, Len(제품명) - 4, 3) / 100

    a는 변수로 변하는 값을 저장합니다. 1부터 Mid(제품명, Len(제품명) - 4, 3) / 100 의 계산 값까지 변합니다.

    For 문이 Next 문을 만나 한 바퀴 돌면 1씩 증가하게 되죠.

    변수 이름은 임의로 지정 가능합니다.

     

    Next a

    For문을 실행하다가 Next를 만나면

    다시 For문으로 돌아가고 변수 a는 다음 값인 1 증가된 값을 가지고 For문이 실행됩니다.

     

    For문으로 돌아갔는데, 증가된 a가 Mid(제품명, Len(제품명) - 4, 3) / 100 값보다 커지면 For문이 종료됩니다.

     

     

     

    For문을 도는 동안 코드의 변화는 다음과 같습니다.

     

     

    fn기타 = fn기타 & "■"

    a가 1일때 실행하면 아무것도 입력되어 있지 않은 fn기타의 값과 "■"를 연결하여 fn기타에 넣으므로, fn기타에는 "■"가 들어가 있습니다.

    a가 2일때 실행하면 fn기타에 입력되어 있던 "■"에 "■"를 연결하여 fn기타에 저장하므로 "■■"가 됩니다.

    a가 3일때 실행하면 fn기타에 입력되어 있던 "■■"에 "■"를 연결하여 fn기타에 저장하므로 "■■■"가 됩니다.

     

    좋은 하루 보내세요. 

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