회사에서 내 실수로 생긴 엑셀 회복 프로젝트
회사에서 내 실수로 생긴 엑셀 회복 프로젝트, 제목처럼 거창하게 시작했는데 저는 그냥 평소처럼 “엑셀이나 좀 정리하고 퇴근하자” 모드였습니다. 그날도 별일 없을 줄 알았죠. 팀 공용 파일 하나 열어놓고, 정렬이랑 필터를 좀 만지다가, 제가 딱 한 번만 “아, 이거 그냥 덮어쓰면 되겠지”라고 생각한 순간부터 인생이 엑셀과 엮이기 시작했습니다.
문제의 파일은 매주 월요일마다 업데이트하는 매출 집계표였어요. 양식이 깔끔해서 누구나 편하게 쓰는 대신, 한 번이라도 서식이 꼬이면 전부가 난장판이 되더라고요. 저는 오후 4시쯤 이미 자료 입력을 끝낸 상태였고, 마지막으로 ‘주문 수’ 열 합계만 재계산하면 끝이라고 생각했습니다. 그런데 거기서 제가 행을 하나 추가하고 수식을 아래로 끌어내리다가, 그만 “복사해서 덮어쓰기”를 눌렀어요. 덮어쓰기, 그 한 단어가 재앙의 시작이었습니다.
처음엔 별 느낌이 없었습니다. 저는 화면에 결과값이 그럴듯하게 보이면 괜찮다고 믿는 타입이라, “아, 수식도 잘 들어갔네” 하고 저장을 눌렀죠. 그런데 팀장님이 파일을 열자마자 한 마디 하셨어요. “이거 오늘 데이터가 왜 이렇게… 숫자가 다 흔들리는데?” 그때부터 제 심장이 파일보다 먼저 저장되더라고요. 저는 이미 저장을 눌러버린 상태라 되돌릴 수가 없었고, 그 순간 ‘회복’이라는 단어가 제 머릿속에 뜨기 시작했어요.
팀에서는 당연히 “누가 건드렸어?” 모드가 됐고, 저는 “제가 방금… 정렬이랑 수식 쪽을…” 같은 말로 죄를 포장하려 했습니다. 근데 포장은커녕 다들 제 표정을 이미 읽더라고요. 특히 제가 회복 방법을 찾기도 전에, 누군가가 파일 버전 기록을 확인하더니 “이전 버전으로는 돌아갈 수 없네”라고 말하는 바람에 분위기가 확 식었습니다. 그 말이 떨어지는 순간, 팀은 제 실수와 함께 엑셀 복구 프로젝트의 운영진이 되어버렸죠.
처음엔 단순 복원 시도부터 했어요. 예전 저장본을 찾아보고, 파일 히스토리를 뒤지고, 백업 폴더가 어딘지 찾고, 심지어 ‘혹시 메일로 보낸 첨부파일이 있지 않냐’까지 확인했습니다. 그런데 매출 집계표는 매번 수정되는 파일이라 “어제 메일”도 이미 최신과 달라서, 숫자 일치가 안 됐어요. 저는 점점 더 확신이 들더라고요. 이건 단순 복원이 아니라, 회복 프로젝트가 맞다는 거요. 제 실수가 프로젝트명을 달고 팀 전체의 시간을 빨아들이는 거죠.
그때부터 누가 시키지도 않았는데 제가 체크리스트를 만들기 시작했어요. “어떤 열이 깨졌는지, 수식이 어디서부터 틀어지는지, 서식은 유지되는지” 같은 걸 적어가며 하나씩 확인했습니다. 엑셀은 생각보다 정직한데, 정직한 만큼 화가 나게도 잘 보여요. 예를 들어 특정 열은 값이 맞는데 다른 열의 합계가 틀어져 있고, 셀 참조가 바뀐 흔적이 역으로 튀어나오더라고요. 저는 그게 너무 정확해서 오히려 무서웠습니다. “아… 이건 내 손가락이 남긴 도장이다” 싶더라고요.
문제는 데이터가 단순 숫자만 있는 게 아니라, 필터로 숨겨지는 행이 섞여 있다는 점이었어요. 예전에는 그냥 합계를 쓰면 됐는데, 이번에는 숨김 상태에 따라 합계가 바뀌는 방식으로 누군가가 설정을 해둔 걸 제가 이번에 같이 건드린 느낌이었습니다. 그래서 같은 값인데도 합계가 다른 경우가 생겼고, 팀은 “이게 맞아?”를 계속 물었죠. 저는 답을 하면서도 속으로 계산기를 다시 돌리고, 누군가는 피벗 테이블을 다시 만들고, 또 다른 사람은 매크로 설정까지 확인했어요. 그렇게 시간이 빨려 들어갔습니다. 점심 먹고 나서부터는 솔직히 시계가 너무 빨리 가는 느낌이었어요.
결국 저희는 ‘완전 복구’는 포기하고 ‘검증 가능한 복구’를 선택했습니다. 즉, 정확히 원본 그대로를 되찾기보단, 현재까지의 데이터 구조에서 합리적인 결론을 얻는 방식이었어요. 저는 예전 버전의 몇 가지 샘플 데이터랑 비교해서 수식 로직을 다시 맞추는 작업을 맡았습니다. 이때부터는 진짜 공부가 시작됐죠. 절대참조, 상대참조, 숨김 행 포함 여부, 그리고 합계 함수가 어떤 조건을 타는지 하나하나 다시 확인했습니다. 솔직히 말하면, 그동안 “엑셀은 대충 된다”라고 생각했던 제가 부끄러워질 정도로요.
다행히도 결과는 나왔습니다. 팀장님이 수정된 파일을 열고 숫자 흐름을 확인하더니 “이 정도면 이제 쓸 수 있겠네”라고 말했을 때, 저는 그제야 숨을 좀 쉬었습니다. 그런데 여기서 끝이 아니죠. 팀은 그 파일을 올린 뒤 저한테 한 가지를 더 요청했어요. “다음부터는 네가 저장하기 전에 경고창 띄우는 거 있지? 그거 설정해.” 저는 그 말 듣고 웃음이 나왔습니다. 제가 만든 건 데이터가 아니라, 우리 팀의 안전장치였거든요. 회복 프로젝트의 진짜 산출물이 엑셀이 아니라 규칙이라는 게 참 아이러니했어요.
그 이후로 저는 엑셀 파일 저장할 때마다 일부러 한 번 더 확인합니다. 그리고 파일명 앞에 꼭 “최종(안전)” 같은 별 의미 없는 문구도 붙이기 시작했어요. 처음엔 다들 농담으로 넘겼는데, 어느 날부터는 팀원들이 제 파일명부터 먼저 찾더라고요. 결국 제 실수는 사라지지 않았지만, 우리 팀은 그 실수 덕분에 더 꼼꼼해졌습니다. 가끔 회식 자리에서 누가 “그 엑셀 회복 프로젝트” 이야기만 꺼내면, 저는 아… 그때 숫자가 살았구나 싶어 피식 웃고 말아요. 실수는 남지만, 그 실수로 누군가는 덜 망가지는 법이거든요.