문제
다음 중 아래와 같이 워크시트에 데이터가 입력되어 있는 경우, 보기의 수식과 그 결과 값으로 옳지 않은 것은?
| 행 | A |
|---|---|
| 1 | (빈 셀) |
| 2 | 한국 대한민국 |
| 3 | 분기 수익 |
| 4 | 수익 |
| 5 | 아름다운 설악산 |
① =MID(A5,SEARCHB(A1,A5)+5,3) → ‘설악산’ ② =REPLACE(A5,SEARCHB("한",A2),5,"") → ‘설악산’ ③ =MID(A2,SEARCHB(A4,A3),2) → ‘민국’ ④ =REPLACE(A3,SEARCHB(A4,A3),2,"명세서") → ‘분기 명세서’
정답
4번
해설
정답: 4. SEARCHB(A4,A3)에서 A4=‘수익’을 A3=‘분기 수익’에서 찾으면 ‘수익’의 시작 바이트 위치인 6을 반환한다(‘분기 ’가 2+2+1=5바이트). 따라서 REPLACE(A3,6,2,"명세서")는 6번째 바이트부터 2바이트(=한글 ‘수’ 한 글자)를 ‘명세서’로 바꿔 ‘분기 명세서익’이 되므로 ‘분기 명세서’가 아니다.
오답 풀이
- 1번: A1은 빈 셀이라 SEARCHB가 1을 반환, MID(A5,1+5,3)=MID(A5,6,3)으로 ‘설악산’이 되므로 옳다.
- 2번: SEARCHB("한",A2)=1, REPLACE는 문자 단위이므로 REPLACE(A5,1,5,"")는 A5(‘아름다운 설악산’)의 앞 5문자(‘아름다운 ’: ‘아름다운’+공백)를 빈 문자열로 지워 ‘설악산’이 남으므로 옳다.
- 3번: SEARCHB(A4,A3)=6, MID(A2,6,2)는 ‘한국 대한민국’의 6번째 문자부터 2글자 ‘민국’이므로 옳다.
- 4번: REPLACE는 문자 단위라 결과가 ‘분기 명세서’가 되지 않아 옳지 않다.
보충 개념 SEARCHB는 바이트 단위로 위치를 세며 한글 한 글자는 2바이트, 공백·영문은 1바이트이다. 반면 REPLACE(문자열,시작,개수,새문자열)와 MID(문자열,시작,개수)는 시작 위치와 개수를 모두 문자(글자) 단위로 처리한다.