본문 바로가기
엑셀

[엑셀] 엑셀 ROUND 함수 - 소수점 0.5를 기준으로 반올림 반내림 해야할 경우.

by 행아아빠 2020. 3. 12.

안녕하세요.

행아아빠입니다.


이번 #엑셀 내용은 #ROUND #함수 입니다.


엑셀 관하여 제게 질문을 주셨는데, 


▼ 질문 내용은 아래와 같습니다.

 

280 이라는 숫자는 원가

78.40 이라는 숫자는 할인금액

201.60 이라는 숫자는 둘을 뺀 숫자

20,160 이라는 숫자는 201.60의 단위가 100m라서 곱하기 100

제가 정확히 원하는 것은

280에서 28%를 할인하면 78이고, 280에서 78을 빼서 202라는 숫자가 나올것이고

202에 100을 곱하면 20,200이 나오게 하고 싶습니다.

눈에 보이지 않는 소수점 때문에 계산이 다 틀려버렸습니다..."


이 경우에 질문의 예시 한가지만 생각한다면 #ROUNDDOWN 함수를 사용해야 합니다.

하지만 추측컨데, 이렇게 입력된 데이터가 존재 할 것이기 때문에

ROUNDDOWN 함수를 사용한다면 해당 예시의 형태에 대해서만 원하는 결과값을 얻을 수 있을 것이고,

만약 소수점이 0.5이상이라면 다른 값이 나오게 되겠지요.

소수점의 버림을 하는 함수로 #TRUNC 함수를 사용해도 되겠으나, 경우의 수가 반올림, 반내림 동시에 존재한다면

마찬가지로 원하는 결과값을 얻기 힘들겠죠!!


 


질문 내용중 280에서 28%를 할인한다면 78이고, 78을 빼서 202라는 숫자가 나와야 한다고 했습니다.

만약, 280에서 28%를 할인하면 78.4가 나오기 때문에 소수점이 0.5이하 이기 때문에 78이 되겠습니다.

하지만 280에서 28%를 할인한 78을 뺀 값을 280*72%로 계산한다면?? 201.6 이라는 숫자가 나오게 됩니다.

이럴때 ROUNDDOWN함수를 사용한다면 당연히 201이 되겠죠.

즉 280-(280*28%)의 값과 280*78%의 값이 같아야 한다는 것이죠!!

수기로는 당연히 계산되는 것이지만,

엑셀에서는 소수점 표기를 안한다던지 ROUND 함수를 사용하지 않는다면, 합계를 냈을때 오차의 범위가 분명 생기게 될 것 입니다.

그렇기 때문에 소수점 계산이

우리가 알고 있는 0.5미만의 소수점이라면 반내림을 하고, 0.5이상이라면 반올림을 해야할 경우에는

ROUND 함수를 사용하시면 됩니다.

댓글