코드 몇 개만 확인하려던 순간
주문번호나 고객코드 몇 개만 보려고 파일을 엑셀로 열 때가 있다.
그럴 때는 보통 뭘 손보려는 게 아니라, 그냥 잠깐 보고 지나가려는 경우가 많다.
그래서 값이 바뀔 거라고는 잘 생각하지 않는다.
원래 값이 아니었던 화면
처음에는 00123으로 보였던 값이 어느 순간 123이 되어 있다.
긴 숫자는 끝자리가 이상해 보이거나, 아예 지수 표기처럼 줄어들어 보일 때도 있다.
03-04 같은 값은 날짜처럼 읽히고, 2024-001 같은 값도 처음 의도와 다르게 보일 수 있다.
처음에는 원본 파일이 잘못된 줄 알기 쉽다. 그런데 몇 번 겪고 나면 파일 자체보다 엑셀이 먼저 값을 자기 식으로 읽은 경우가 더 많다는 걸 알게 된다.
늦게 알아차렸을 때의 손실
이 문제가 더 짜증나는 건 겉으로는 멀쩡해 보인다는 점이다.
한글이 깨지면 바로 티가 난다. 그런데 코드값 문제는 그냥 숫자로 보이니까 한 번 보고 지나치기 쉽다.
그러다 lookup이 안 맞거나, 업로드가 실패하거나, 외부 시스템 값이랑 안 맞는 순간에야 뒤늦게 돌아보게 된다.
더 피곤한 건 그때쯤이면 이미 엑셀 안에서 이것저것 손을 대고 난 뒤인 경우가 많다는 점이다.
필터를 걸었을 수도 있고, 메모를 적었을 수도 있고, 다른 열을 정리했을 수도 있다. 그런데 그제서야 코드 열이 잘못 읽힌 걸 알면, 다시 원본 CSV를 열고 가져오는 방식부터 바꿔야 할 때가 생긴다.
결국 열 타입을 다시 잡아서 처음부터 열어야 하고, 그 전에 엑셀 안에서 해 둔 일도 다시 해야 한다.
그래서 이 문제는 값 하나 틀어지는 걸로 끝나지 않는다. 늦게 알수록 이미 해 둔 일을 통째로 다시 하게 만든다.
자주 망가지는 값의 종류
몇 번 겪고 나면 유독 자주 문제를 만드는 값들이 거의 정해져 있다는 걸 알게 된다.
- 앞에
0이 붙는 코드값 - 자릿수가 긴 주문 ID나 참조 번호
- 날짜처럼 보이는 문자열
- 계산용 숫자가 아니라 식별용으로 쓰는 값
엑셀 눈에는 숫자처럼 보여도, 실제 업무에서는 숫자가 아니라 코드로 다뤄야 하는 값들이다.
엑셀의 자동 해석
입장상으로는 그냥 파일을 열어 본다고 생각하기 쉽다.
그런데 엑셀은 값을 보여 주기 전에 먼저 숫자인지, 날짜인지, 그냥 텍스트인지부터 정해 버린다.
그래서 내가 보고 있는 화면은 원본 그대로라기보다, 엑셀이 한 번 손을 댄 뒤의 결과일 수 있다.
이걸 한 번 알고 나면, 숫자처럼 보인다고 바로 믿지는 않게 된다.
달라지는 확인 순서
예전에는 CSV를 더블클릭해서 바로 열었다면, 나중에는 그 방식이 좀 꺼려진다.
선행 0이 있는 열이 있는지, 긴 숫자 ID가 있는지, 고객코드나 주문번호처럼 코드 같은 값이 들어 있는지 먼저 보게 된다.
숫자처럼 보여도 계산할 값이 아니라면, 일단 텍스트일 수 있다는 쪽부터 떠올리게 된다.
실무에서 먼저 챙기는 네 가지
숫자처럼 보여도 사실은 코드로 남아야 하는 값이 있다면, 보통 아래 정도만 챙겨도 꽤 덜 피곤하다.
결국 엑셀에서 값을 잘 본다는 건, 보기 전에 엑셀이 먼저 바꾸지 못하게 막는 쪽에 가깝다.
아직도 이런 기본값이 남아 있는 이유
찾아보면 아주 뜬금없는 문제는 아니다.
엑셀은 원래 숫자와 날짜를 빨리 다루기 좋게 만들어졌고, CSV는 열 타입 정보를 따로 갖고 있지 않다. 그러니 엑셀 쪽에서는 눈에 보이는 모양을 먼저 보고 숫자인지 날짜인지 짐작해서 여는 쪽으로 오래 흘러온 셈이다.
문제는 그 기본값이 코드 열이 많은 일에는 여전히 거칠다는 점이다. 주문번호, 고객코드, 우편번호처럼 너무 흔한 값들도 엑셀 입장에서는 그냥 숫자 비슷한 모양으로 먼저 보일 때가 있다.
그래서 이건 내가 유난히 조심성이 없어서 생기는 일이라기보다, 엑셀이 오래 끌고 온 기본 동작에 더 가깝다.
자동 변환 끄기
최근 버전 엑셀은 이런 자동 변환을 일부 끌 수 있다.
Microsoft 365 계열이라면 CSV를 열 때 선행 0 제거, 긴 숫자 잘라내기, 날짜로 바꾸기 같은 동작을 제어하는 옵션이 들어간 버전이 있다. 메뉴가 조금씩 다르긴 하지만, 가져오기 화면이나 옵션 쪽에서 자동 데이터 변환 관련 항목을 한 번 볼 만하다.
처음 여는 방식까지 바꾸기 번거롭다면, 이 옵션부터 켜져 있는지 확인해 보는 것도 괜찮다. 관련 설명은 Microsoft의 자동 변환 제어 안내 (영어 주의)나 선행 0과 큰 숫자 유지하기 안내 (영어 주의)에서 볼 수 있다.
관련 글
같은 맥락에서 이어서 읽기 좋은 글들입니다.