본문 바로가기

Computer/Excel/Powerpoint

[Excel] Text 함수의 결과는 텍스트다? 숫자로 바꾸려면 numbervalue

엑셀에서 텍스트 함수의 결과는 모두 텍스트로 나온다. 

(여기서 텍스트 함수란 left, right, mid... 등등)

 

그런데 이 사실을 모르면 엑셀 사용에 불편함!짜증! 이 오는 순간이 있다.

바로 텍스트 형의 숫자가 등장할 때이다.

아래 그림을 보자.

 

1이든 "1"이든, 셀에서 표현될 때는 1로 표현되지만, 저 둘을 비교하는 식을 세워 확인하면 FALSE. 즉 둘이 다름으로 판정한다. 즉 1과 "1" 은 다르다!!

(눈썰미가 좋다면 셀에서 데이터의 정렬로 숫자/문자를 구분할 수도 있다. 숫자의 경우 우측 정렬, 텍스트의 경우 좌측 정렬이 기본이기 때문)

 

 

아래의 예제에서, 코드 번호의 앞 3자리가 코드라고 하고, 해당 정보를 이용해 음식을 채우는, 아주 간단한 vlookup 문을 써보자.

 

코드번호에서 앞 3자리라고 했으니 left 함수를 써서 B3의 세 자리를 가져오면 101이다.

근데 이게 숫자 101이냐? 그건 아니다. 아래의 결과를 보자.

 

그럼 텍스트화된 숫자를 숫자와 비교하는 법은 없나?

이럴 때 쓰는 함수가 numbervalue 다. 

numbervalue 는 쉽게 생각해 "101" 에서 따옴표를 날려주는 기능을 하는 것으로 이해하면 쉽다.

numbervalue 를 적용한 left 함수의 결과값은 101과 동일하다.

 

따라서, 본 예제에서 vlookup 을 제대로 사용하기 위해서는 lookupvalue 에 numbervalue 와 left 함수를 동시에 적용시키면 된다.