Notice
Recent Posts
Recent Comments
rand(life)
1일1함수 (20) MID함수 : 문자열에서 지정한 위치의 문자 추출 본문
오늘은 MID함수에 대해 다룹니다. 이전 포스트에서 MID함수에 대해 잠깐 언급하였기 때문에, 이번에는 전에 만든 이원목적분류표와 관련하여 유용한 팁을 하나 알려드리겠습니다.
이원목적분류표 간단버전에서 정답의 개수를 보여주는 수식을 살펴보겠습니다. 아래 그림에서는 O9셀의 수식입니다.
=COUNTIF($C$9:$C$38,N9)
C9:C38의 범위에서 정답이 1인 개수를 세어야하기 때문에,
=COUNTIF($C$9:$C$38,1)
이라고 수식을 써도 되지만 그렇게하면 2번답의 개수, 3번답의 개수등도 일일이 수식을 손으로 써줘야합니다. (상수인 1,2는 끌어채우기를 하면 3,4,5로 자동변환되지 않기 때문입니다.)
그래서 N9셀의 값을 참조하게하고 끌어채우기를 하면, 셀주소는 자동변환되기때문에 N10,N11,N12... 로 수식이 자동변환됩니다.
아무튼, 수식에서 N9셀을 참조하게한 건 이해가 되는데, 정작 N9셀에는 "1번답"이라고 써있는 것입니다. 그렇다면, "1번답"이라는 문자열에서 "1"이라는 문자만 참조해야하므로 위의 수식은 다음과 같이 고쳐야하지 않을까요?
=COUNTIF($C$9:$C$38,MID(N9,1,1))
그런데, 실제로 N9셀을 클릭해보면 그 안에는 "1번답"이라는 문자열이 들어가 있는 것이 아니라 "1"만 들어가 있습니다. 어떻게 된 것일까요?
그것은 셀서식을 이용한 것입니다.
"사용자지정"을 선택하고 "형식"란에
0을 입력하고, 그 뒤에 "번답의개수"라고 입력합니다.
"확인"을 누르고 나오면 실제 셀안에는 1이라는 값이 들어있지만 표시는 "1번답의개수"로 되어있는 것을 볼 수 있습니다.
이처럼, 셀서식을 잘 이용하면 수식을 좀 더 단순하게 만들 수 있습니다.
2009/04/18 - [컴퓨터/엑셀] - 엑셀로 작성한 이원목적 분류표 간단버전
2009/04/21 - [컴퓨터/엑셀] - 1일1함수 (18) INDIRECT 함수 : 셀주소 지정을 간접적으로
2009/04/16 - [컴퓨터/엑셀] - 엑셀함수 스페셜 : SUMPRODUCT 함수가 COUNTIFS함수보다 나은점
MID(text,start_num,num_chars)
text 추출할 문자가 들어 있는 텍스트 문자열입니다.
start_num 추출할 첫 문자의 위치입니다. text의 첫 문자 위치는 start_num 1입니다.
num_chars MID 함수를 사용하여 텍스트에서 반환할 문자의 개수를 지정합니다.
주의
- start_num이 문자열의 길이보다 크면 ""(빈 문자열)을 반환합니다.
- start_num이 문자열의 길이보다 작고 start_num과 num_chars의 합이 문자열의 길이를 초과하면 MID는 마지막 문자까지 반환합니다.
- start_num이 1보다 작으면 #VALUE! 오류 값이 반환됩니다.
-
num_chars가 음수이면 #VALUE! 오류 값이 반환됩니다.
이원목적분류표 간단버전에서 정답의 개수를 보여주는 수식을 살펴보겠습니다. 아래 그림에서는 O9셀의 수식입니다.
=COUNTIF($C$9:$C$38,N9)
C9:C38의 범위에서 정답이 1인 개수를 세어야하기 때문에,
=COUNTIF($C$9:$C$38,1)
이라고 수식을 써도 되지만 그렇게하면 2번답의 개수, 3번답의 개수등도 일일이 수식을 손으로 써줘야합니다. (상수인 1,2는 끌어채우기를 하면 3,4,5로 자동변환되지 않기 때문입니다.)
그래서 N9셀의 값을 참조하게하고 끌어채우기를 하면, 셀주소는 자동변환되기때문에 N10,N11,N12... 로 수식이 자동변환됩니다.
아무튼, 수식에서 N9셀을 참조하게한 건 이해가 되는데, 정작 N9셀에는 "1번답"이라고 써있는 것입니다. 그렇다면, "1번답"이라는 문자열에서 "1"이라는 문자만 참조해야하므로 위의 수식은 다음과 같이 고쳐야하지 않을까요?
=COUNTIF($C$9:$C$38,MID(N9,1,1))
=COUNTIF($C$9:$C$38, | $C$9:$C$38의 범위안에서 다음의 값을 가진 셀의 개수를 구한다 |
MID(N9 | N9셀안에 들어있는 문자열중 |
,1,1)) | 첫번째 문자부터 시작해서 1개의 문자 |
그런데, 실제로 N9셀을 클릭해보면 그 안에는 "1번답"이라는 문자열이 들어가 있는 것이 아니라 "1"만 들어가 있습니다. 어떻게 된 것일까요?
그것은 셀서식을 이용한 것입니다.
숫자가 쓰여있는 셀을 선택하고, 오른쪽 클릭하여 "셀서식"을 실행합니다.
"사용자지정"을 선택하고 "형식"란에
0을 입력하고, 그 뒤에 "번답의개수"라고 입력합니다.
"확인"을 누르고 나오면 실제 셀안에는 1이라는 값이 들어있지만 표시는 "1번답의개수"로 되어있는 것을 볼 수 있습니다.
이처럼, 셀서식을 잘 이용하면 수식을 좀 더 단순하게 만들 수 있습니다.
2009/04/18 - [컴퓨터/엑셀] - 엑셀로 작성한 이원목적 분류표 간단버전
2009/04/21 - [컴퓨터/엑셀] - 1일1함수 (18) INDIRECT 함수 : 셀주소 지정을 간접적으로
2009/04/16 - [컴퓨터/엑셀] - 엑셀함수 스페셜 : SUMPRODUCT 함수가 COUNTIFS함수보다 나은점