728x90

엑셀을 하다보면 보여지는 문자는 "서식정보"와 "내용"이 합쳐집니다.

즉 생긴거는 문자이지만 숫자일 수도 있고, 숫자 10이 "10권"으로 표시될 수도 있다는 뜻입니다.

특히 통계 프로그램을 통해 생성된 숫자나 외부파일을 복사해서 붙이는 경우 문자로 많이 붙여넣어집니다.

 

이런경우에 문자를 숫자로 고쳐주는 NUMBERVALUE 함수에 대해서 알아보겠습니다.

 

 

NUMBERVALUE(text, [decimal_separator], [group_separator]) : 텍스트를 원하는 형식에 숫자로 변환합니다.

  • text : 숫자로 표시될 문자입니다. 함수가 숫자로 해석할 수 없는 경우 #VALUE! 에러를 반환합니다.
  • [decimal_separator] : 소숫점을 확인합니다. text안에서 decimal_separator를 찾아서 똑같은게 있다면 그 오른쪽에 있는 숫자는 소수점 이하로 표시합니다. 같은 decimal_separator가 2개 이상이면 오류(#VALUE!)가 발생합니다.
  • [group_separator] : 구분표시입니다. text안에서 group_separator 를 찾아서 똑같은게 있다면 무시합니다.
  • 빈칸은 자동으로 무시합니다. 3 0 0 0은 3000으로 자동으로 변환됩니다.

 

인수에 대한 설명이 어렵습니다.

하지만 동작이 쉬운 함수로 예를 들어서 보면 명확합니다.

 

=NUMBERVALUE("1서43장55","장","서") 라고 하면 결과는 "143.55"가 됩니다.

"서"는 뭔가 구분기호로 생각해서 없애버리고 "장"은 소수점으로 빼버린 겁니다.

 

예시

 

문자로 표기되어 있고 중간에 공백이 있어서 연산이 안되는 왼쪽에 비해,

NUMBERVALUE로 변환한 식은 계산이 바로됩니다.

 


 

요즘은 사실 엑셀에서 어지간한 텍스트 형식의 숫자는 연산이 바로 지원되게 만들어져 있습니다.

텍스트 형식으로 '34 + '55을 하면 그냥 89라고 결과가 뜹니다.

스마트하게 만들어지는 추세죠.

언제가 NUMBERVALUE 함수는 장기적으로 없어지는 과거의 유물이 될 수도 있겠네요.

하지만 숫자가 텍스트가 되어서 문제가 생기는 경우는 언제든지 있습니다.

 

오른쪽 관중수가 텍스트입니다.

 

텍스트로 표시된 숫자는 거의 대부분 칸의 왼쪽 위에 초록색 삼각형이 있어 알 수 있습니다.

하지만 이것도 예외는 언제든지 있어서 혼돈될 때가 있습니다.

외부 프로그램으로 CSV 파일을 만들거나, 혹은 복사해서 붙일 때는 텍스트로 적용되었는지 아닌지를 확인할 필요가 있습니다.

반응형

+ Recent posts