기출 따라잡기 문제1.2번
표3
| 도서코드 | 성명 | 도소매 | 정가 | 수량 | 지불액 |
| C-130-1 | 정화선 | 소매 | 12,480 | 15 | 157,200 |
| A-250-2 | 박세람 | 도매 | 7,040 | 6 | 38,016 |
| D-271-2 | 추영임 | 도매 | 19,520 | 18 | 339,360 |
| B-260-1 | 김우승 | 도매 | 30,400 | 26 | 553,280 |
| E-61-1 | 인수연 | 도매 | 4,160 | 6 | 24,960 |
| D-133-1 | 정유진 | 소매 | 26,560 | 70 | 1,673,280 |
| B-111-2 | 김지연 | 소매 | 26,240 | 57 | 1,495,680 |
2. 표3의 G18:G24 영역에 페이지 단가를 계산하는 사용자 정의 함수 F단가를 작성하여 계산하시오.
- F단가는 도서코드와 정가를 인수로 받아 페이지수를 산출한 후 페이지당 단가를 계산하는 함수임
- 페이지수는 도서코드의 길이에 따라 다르며 -과 - 사이의 숫자임
- F단가는 정가/페이지수로 계산하고 소수 첫째 자링서 반올림하여 표시
정답
사용자정의함수
Public Function F단가(도서코드, 정가)
If Len(도서코드) = 7 Then
F단가 = Round(정가 / Mid(도서코드, 3, 3), 0)
Else
F단가 = Round(정가 / Mid(도서코드, 3, 2), 0)
End If
End Function
이렇게 되어있는데 길이가 7이면으로 가정한게 도서코드의 글자수가 7글자여서 그런건가요?
그리고 else에서 도서코드,3,2인거는 도서코드가 7글자가 아닌 E-61-1의 61을 의미하는건가요?
네 도서 길이가 7인경우가 있고 6인 경우가 있기 때문에 지정해 준 것입니다.
도서코드의 길이는 워크시트를 보면 판단할 수 있습니다.
C-130-1 처럼 7자리로 된 코드와
E-61-1 처럼 6자리로 된 코드가 있습니다.
F단가 = round(정가 / Mid(도서코드, 3, 3), 0)
Mid(도서코드, 3, 3) 은 도서 코드의 세번째 자리부터 세글자, 즉 C-130-1 의 경우 130을 말합니다.
F단가 = Round(정가 / Mid(도서코드, 3, 2), 0)
Mid(도서코드, 3, 2) 는 도서 코드의 세번째 자리부터 두글자, 즉 E-61-1 의 경우 61을 말합니다.
좋은 하루 되세요
"-
*2013-09-27 06:59:55
네 도서 길이가 7인경우가 있고 6인 경우가 있기 때문에 지정해 준 것입니다.
도서코드의 길이는 워크시트를 보면 판단할 수 있습니다.
C-130-1 처럼 7자리로 된 코드와
E-61-1 처럼 6자리로 된 코드가 있습니다.
F단가 = round(정가 / Mid(도서코드, 3, 3), 0)
Mid(도서코드, 3, 3) 은 도서 코드의 세번째 자리부터 세글자, 즉 C-130-1 의 경우 130을 말합니다.
F단가 = Round(정가 / Mid(도서코드, 3, 2), 0)Mid(도서코드, 3, 2) 는 도서 코드의 세번째 자리부터 두글자, 즉 E-61-1 의 경우 61을 말합니다.
좋은 하루 되세요
"