엑셀 시간 자동 채우기가 틀릴 때 // 엑셀 팁
엑셀의 자동 채우기 핸들이나 자동 채우기 기능은 직장인들의 귀찮음을 한방에 해결해주는 고마운 기능이다.
근데 초단위가 포함된 수많은 시간 셀을 자동 채우기로 채우면 이상하게 입력되는 경우가 있다.
1. 현상
이미지와 같은 시간 셀의 채우기 핸들을 더블 클릭해서 시간을 아래쪽으로 채우면,
이미지와 같은 중복된 초 셀이 생긴다.
근데, 이런 셀을 찾아 바꾸기를 하거나 뭔가 조치를 취하려고 해도 눈에 보이는 값만 동일하게 보이는 것이고,
실제 엑셀 내부의 계산식은 차이가 있기 때문에 서로 다른 값으로 인식된다.
2. 원인
엑셀이 시간을 계산하는 기준 날짜는 1900년 1월 1일이고, 1일에 1씩 숫자를 증가시켜서 시간을 계산한다.
1일에 1씩이므로, 1보다 작은 수는 24로 나누어서 시간 값, 그 이하의 값(소수점)은 60으로 나눠서 시간을 계산한다.
즉 이미지의 두 값은 시간 표시에서는 같지만,
숫자 계산값은 다르다. 다만, 시간으로 표시할 때 올림 소수점 이하가 떨어져나가면서 문제가 생기는 것이다.
3. 방안
귀찮지만 확실한 방법을 소개한다.
=$시작시간셀+TIME(INT(0초 셀/3600),0,MOD(0초 셀,3600)) |
위 식을 이용해서, 엑셀이 자체적으로 계산하는 시간을 따로 불러와서 내가 계산하면 된다.
이렇게 입력하면,
나오는 결과를 채우기 핸들이나 자동 채우기로 쭉 채우면 시간이 입력된다. 이 시간은 아무리 길어도 정확하다다.
해당 값을 복사해서 값만 붙여넣기 하면 된다.
이렇게 정상적으로 표시된다.
4. 결론
(1) 초 단위를 길게(86400초에 대한 데이터가 있는 경우 등) 표시해야할 필요가 있을 때 쓰면 좋다.
(2) 엑셀은 왜 시간을 저런식으로 계산했을까... 상당히 효율적이지만, 포스팅에 표시된거보다 오차가 매우 크다.
(12시간을 초단위로 측정하면, 30초가 넘게 차이난다.)
(3) 솔직히 쓸데 없을 수도 있겠다.. 하하...
혹시 질문이 있다면 아는 선에서 답변드리겠습니다.
수수료를 제공받는 포스팅조차 경험이 없는 내용으로는 적지 않습니다.
지식이 짧더라도 길게 생각하여 적겠습니다.
- 베이직샾