Please Enable JavaScript!
Gon[ Enable JavaScript ]

반응형

엑셀에서 부동소수점으로 표현한 수가 실수로 정확히 표현하지 않을 수 있습니다. 이로 인해 연산을 하면서 여러가지 문제를 발생시킵니다. 소수점 숫자의 자릿수를 늘여보면 미세하게 값이 틀릴 수 있기 때문입니다. 예를 들어 연산 결과 0.1 로 나온 값의 자릿수를 늘여서 보면 0.10000000149011 처럼 미세하게 큰 경우입니다.

 

B C 열에 있는 값을 빼서 D 0.1 나왔습니다. 계산 결과를 0.1 과 등호로 비교하니 결과가 FALSE 가 나타났습니다. 이것은 두 값이 같지 않다는 의미입니다. 부동소수점 수를 비교할 때 주의할 것이 있습니다. 연산 후 값이 보이는 것과 다를 수 있다는 것입니다.

 

자릿수 늘임 기능을 이용해서 0.1 의 소수점을 계속해서 늘여 보세요. 16자리까지 늘이면 0.1 이 아닌 0.099 임을 알 수 있습니다.

 

아래는 참고하면 좋을 만한 글들의 링크를 모아둔 것입니다. ※
엑셀 Excel 소수점 자리 설정하는 여러가지 방법
엑셀 Excel 소수점 자릿수를 이용 숫자 데이터 단위 조절하기
엑셀 Excel 숫자데이터 소수점 자리수와 백분율 조절하기
엑셀 Excel 셀에 소수점 데이터를 분수로 표현하기
셀 Ecel 조건부 서식에서 소수점이 없는 수(정수) 구분하기


문제를 해결하기 위해서 ROUND 함수를 사용할 것입니다. ROUND 함수는 지정한 자릿수로 반올림하겠습니다. 두 번째 매개변수로 입력하는 소수점 자릿수입니다. 예를 들어 20.789 에서 소수점 두 자릿수인 8 을 반올림하고 싶다면 ROUND(20.789, 2) 로 결과값은 20.79 가 됩니다. 

 

ROUND(number, num_digits)

l  Number : 필수 요소. 반올림할 숫자.

l  num_digits : 필수 요소. number 인수를 반올림할 소수점 자릿수. 

 

ROUND 를 적용한 결과 B-C 를 뺀 값은 자릿수를 늘여도 0.1 인 것을 알 수 있습니다. 비교한 결과값도 이전과 달리 TRUE 가 나왔습니다. 이제부터 소수점 숫자 연산에서 등호 오류가 난다면 ROUND 함수를 함께 사용해서 해결해 보시기 바랍니다.

 

아래는 참고하면 좋을 만한 글들의 링크를 모아둔 것입니다. ※
엑셀 Excel 소수점 자리 설정하는 여러가지 방법
엑셀 Excel 소수점 자릿수를 이용 숫자 데이터 단위 조절하기
엑셀 Excel 숫자데이터 소수점 자리수와 백분율 조절하기
엑셀 Excel 셀에 소수점 데이터를 분수로 표현하기
셀 Ecel 조건부 서식에서 소수점이 없는 수(정수) 구분하기
반응형
Posted by 녹두장군

댓글을 달아 주세요