스프레드시트 최신기출문제 2회 오답노트
[계산작업 시트]
[문제 2] [표1]의 학년, 강의과목과 [표2]의 할인율표를 이용하여 [G3:G32] 영역에 수강료 할인율을 계산하여 표시하시오
▶ HLOOKUP, MATCH 함수 사용
1. 강의과목을 표에서 찾는다. (내림차순이라 -1) =MATCH(F3,A36:A37,-1)
2. 할인율을 계산한다. (과목이랑 행수가 차이나므로 +1) =HLOOKUP(E3,B35:D37,MATCH(F3,A36:A37,-1)+1)
3. 절대/상대/혼합참조로 수정 후 채우기 핸들을 이용하여 [표1]을 채워준다. =HLOOKUP(E3,$B$35:$D$37,MATCH(F3,$A$36:$A$37,-1)+1)
[문제 3] [표1]의 현재강의수와 전체강의수를 이용하여 [K2:K32] 영역에 진행률을 계산하여 다음과 같이 표시하시오
▶ '현재강의수/전체강의수'의 값이 0.8일 경우 : ▶▶▶▶▶▶▶▶80.0%
▶ '현재강의수/전체강의수'의 값이 0.55일 경우 : ▶▶▶▶▶55.0%
▶ '현재강의수/전체강의수'의 값이 오류일 경우 : 신생강의
▶ REPT, TEXT, IFERROR 함수 사용
1. 삼각형을 먼저 구한다. =REPT("▶",(H3/J3)*10)
2. 값을 %로 나타낸다. =TEXT(H3/J3,"0.0%")
3. 두 식을 연산자를 사용해 붙여준다. =REPT("▶",(H3/J3)*10)&TEXT(H3/J3,"0.0%")
4. 오류일 경우의 값을 지정해준다. =IFERROR(REPT("▶",(H3/J3)*10)&TEXT(H3/J3,"0.0%"),"신생강의")
[문제 4] 사용자 정의 함수 'fn비고'를 작성하여 [표1]의 [L3:L32] 영역에 비고를 계산하여 표시하시오
▶ '수강인원/현재강의수'가 20 이상이면 "강의증설", 5 이하이면 "강의폐강", 그외에는 공백으로 표시하시오
▶ SELECT CASE 문 이용
1. 기본 구문을 작성한다. Public Function fn비고(현재강의수, 수강인원)
End Function
2. 기본 구문 사이에 조건문을 작성한다. Select Case 수강인원 / 현재강의수
Case Is >= 20
fn비고 = "강의증설"
Case Is <= 5
fn비고 = "강의폐강"
Case Else
fn비고 = ""
End Select
3. 비고에 'fn비고' 함수를 사용하여 답을 구하고 채우기 핸들을 이용하여 [표1]을 채워준다.
[문제 5] [표1]의 강사명, 강의과목, 전체강의수를 이용하여 [표3]의 [G36:J38] 영역에 과목별 전체강의수별 강사명을 계산하여 표시하시오
▶ [표3]의 순위는 전체강의수가 많은 순으로 지정됨
▶ INDEX, MATCH, LARGE 함수를 적용한 배열 수식 사용
1. 과목별 전체강의수 순위를 구한다. =LARGE((F3:F32=G35)*J3:J32,F36)
2. MATCH로 값의 위치를 구한다. =MATCH(LARGE((F3:F32=G35)*J3:J32,F36),(F3:F32=G35)*J3:J32,0)
3. 찾은 값으로 강사명을 구한다. =INDEX(D3:D32,MATCH(LARGE((F3:F32=G35)*J3:J32,F36),(F3:F32=G35)*J3:J32,0))
4. 절대/상대/혼합참조로 수정 후 채우기 핸들을 이용하여 [표3]을 채워준다.
=INDEX($D$3:$D$32,MATCH(LARGE(($F$3:$F$32=G$35)*$J$3:$J$32,$F36),($F$3:$F$32=G$35)*$J$3:$J$32,0))
[기타작업 시트]
[문제 2-3] 종료 버튼을 클릭하면 현재 작업하는 시트의 [F2]셀에 시간을 제외한 현재 날짜를 입력한 후 폼을 종료하는 프로시저를 작성하시오
1. [F2]셀에 현재날짜를 입력하는 식을 작성한다. [F2] = DATE
2. 폼을 종료하는 식을 작성한다. Unload Me