실무에서 여러 사람과 엑셀파일을 공유하다 보면, 파일 안에 작성된 데이터와 수식을 보호하기 위해 시트에 암호를 설정하는 경우가 종종 있습니다. 하지만 이렇게 보호한 파일을 간혹 오랜만에 수정해야 할 때, 설정한 비밀번호를 잊어서 난감할 때가 있는데요.
엑셀 시트 암호를 잊어서 난감할 때.. 이제 1분 안에 해결하세요!
오늘은 시트 암호를 별도의 프로그램 설치 없이 윈도우에서 간단하게 해결하는 방법을 알아보겠습니다.
파일 확장자 변경하기: 시트가 보호된 엑셀 파일의 사본을 하나 생성합니다. 이후 파일의 확장자를 "xlsx(또는 xlsb, xlsm 등..)"에서 "zip"으로 변경합니다.
엑셀 파일의 확장자를 zip 으로 변경합니다.
[ispan파일 확장자가 보이지 않을 경우, 폴더 설정의 [보기] 탭 - [표시] 항목으로 '파일 확장명'을 체크하면 확장자가 표시됩니다.
폴더 설정의 [표시]탭에서 파일확장명을 체크하면 확장자가 항상 표시됩니다[/ispan]
확장자를 변경하면 '파일의 확장명을 변경하면 사용할 수 없게 될 수도 있습니다' 라는 안내문구가 출력됩니다. [예] 버튼을 누르면 확장자가 변경됩니다.
파일 확장명을 변경할 지 안내창이 나오면 예 버튼을 클릭합니다.
시트 XML파일 수정하기: 이제 압축파일을 실행한 후, "xl" 폴더 → "worksheets" 폴더로 차례대로 이동하면 통합문서 안의 각 시트별 xml 파일이 있습니다. 시트 암호를 해제 할 xml 파일을 드래그해서 바탕화면으로 복사합니다.
압축파일에서 xl → worksheet 폴더로 이동 후, 암호를 해제할 시트의 xml 파일을 바탕화면으로 옮깁니다
바탕화면으로 복사한 xml 파일을 우클릭 - [연결 프로그램]에서 [메모장]을 선택해서 실행한 후, Ctrl + F 를 눌러 찾기를 실행합니다.
옮긴 xml 파일을 우클릭 → 연결프로그램 → 메모장으로 실행합니다.
찾을 대상으로 "protection"을 검색하면 <sheetProtection ..... 으로 시작하는 태그가 검색됩니다. sheetProtection을 감싸는 꺽쇠기호가 시작하는 부분부터 끝나는 부분까지 선택후, 삭제합니다.
<sheetProtection .... /> 을 선택해서 삭제한 후, 메모장을 저장합니다.
찾기로 protection 을 검색한 후, 꺾쇠기호의 시작부터 끝까지 삭제하고 파일을 저장합니다.
이제 메모장을 저장 및 종료한 후, 수정한 xml 파일을 압축파일로 드래그하여 기존 xml 파일을 수정한 파일로 덮어쓰기 합니다.
수정한 xml 파일을 압축파일 안으로 덮어쓰기 합니다.
시트 암호 해제 확인: 마지막으로 압축파일의 확장자를 "zip" 에서 "xlsx"로 변경한 후, 파일을 실행하면 해당 시트의 암호가 해제된 것을 확인할 수 있습니다.
이제 압축파일의 확장자를 다시 xlsx로 변경하면 암호가 해제된 것을 확인할 수 있습니다.
그렇다면, 안전하게 파일을 보호하려면 어떻게 해야 하나요?
아쉽게도 엑셀을 포함한 물리적으로 공유되는 모든 파일은 사실, 보안에 다소 취약합니다.😭
그렇기 때문에, 되도록이면 민감데이터는 파일로 공유하지 않고 데이터를 서버에 올린 후, 권한이 있는 사람만 일회성으로 조회할 수 있도록 관리하는 것이 좋습니다.
하지만, 우리와 같은 일반 사용자에게 직접 서버를 구축해서 자료를 공유하기란 현실적으로 쉽지 않은 것이 사실인데요! 그렇기 때문에 실무에서 엑셀로 자료를 공유할 땐, 아래 몇가지 규칙을 지키는 것이 좋습니다.
민감 데이터는 되도록이면 엑셀 파일로 공유하지 않고, 만약 공유해야 할 땐 꼭 필요한 자료만 선별해서 공유한다. → (귀찮다고 있는 파일 그대로 보내지 않기!!❌)
만약 파일 안의 자료를 보호해야 한다면, "시트 보호" 기능대신 "통합 문서 보호" 기능을 사용한다.
→ (통합문서 보호는 [파일] - [정보] - [통합문서 보호] - [암호 설정]으로 적용할 수 있습니다. '통합문서 구조 보호'가 아닌 '통합문서 보호'를 선택하는 것을 주의하세요!🙌)
파일을 좀 더 확실히 보호하고 싶다면, 통합문서 보호를 적용한 엑셀 파일을 한번 더 zip 으로 압축하면서 대소문자+특수문자가 섞인 암호를 적용하면 더욱 확실하게 보호할 수 있습니다.