엑셀 Excel 파일이 손상되어서 열리지 않을 때 조치하는 방법

엑셀(Excel)/Excel

엑셀 Excel 파일이 손상되어서 열리지 않을 때 조치하는 방법

 

환경: Microsoft Excel 2013

 

간혹 엑셀 파일을 열었는데 파일이 손상되었는지 열리지 않는 경우가 있습니다. 워낙 경우의 수가 많기 때문에 정확하게 조치 방법을 알 수는 없지만 이전에 해결을 보았던 여러 방법들을 모아서 알려 드리겠습니다. 보안 옵션을 해제하거나 복구 기능을 이용하는 등 다양한 방법들이 있습니다.

 

보안 센터에서 제한된 보기 해제

 

먼저 제한된 보기 보안 기능을 해제해 보겠습니다. 웹 브라우저에서 파일을 다운 받는 경우 외부 파일들은 문서 보안 기능으로 인해 제한을 받게 됩니다. 이 옵션들을 해제하는 것입니다. 설정 해제를 위해 [파일] > [옵션] 메뉴를 선택합니다.

엑셀 Excel 파일이 손상되어서 열리지 않을 때 조치하는 방법

 

옵션 팝업창에서 왼쪽 메뉴 중 [보안 센터]를 선택합니다. 보안 센터 설정 화면에서 다시 화면 하단에 있는 [보안 센터 설정] 버튼을 클릭합니다

엑셀 Excel 파일이 손상되어서 열리지 않을 때 조치하는 방법

 

두 번째 팝업창인 보안 센터에서 제한된 보기를 선택하시면 오른쪽에 3가지 옵션을 볼 수 있습니다. 이것을 모두 해제한 후 다시 엑셀 파일을 열어 봅니다

엑셀 Excel 파일이 손상되어서 열리지 않을 때 조치하는 방법

 

다른 프로그램과의 충돌로 안 열리는 경우

 

다음은 엑셀 옵션 설정이 아닌 자신이 쓰는 컴퓨터에 대한 설정입니다. 다양한 문서 보안 프로그램과 충돌로 인해 안 열릴 수도 있습니다. 이 때는 마이크로 소프트 제품군만 남겨 두고 모든 프로그램들을 종료하는 것입니다. 관련 서비스들을 종료하기 위해 검색 창에 msconfig 를 입력해서 시스템 구성 팝업창을 띄웁니다

엑셀 Excel 파일이 손상되어서 열리지 않을 때 조치하는 방법

 

시스템 구성에서 서비스 탭을 클릭하시면 현재 컴퓨터에서 구동되고 있는 모든 서비스 목록을 볼 수 있습니다. 이 중에서 OS 와 관련된 마이크로소프트 제품군만 남기고 모두 종료해야 합니다. 팝업창 하단에 [모든 Microsoft 서비스 숨기기]를 체크하고 모두 사용 안 함을 클릭합니다

엑셀 Excel 파일이 손상되어서 열리지 않을 때 조치하는 방법

 

다음은 부팅하고 OS 가 구동될 때 시작되는 프로그램들을 종료해야 합니다. 시작 프로그램 탭을 누르시면 현재 구동되고 있는 시작 프로그램들이 있을 겁니다. 이 또한 [모두 사용 안 함]을 클릭해 줍니다. [확인]을 눌러 시스템을 재부팅합니다

엑셀 Excel 파일이 손상되어서 열리지 않을 때 조치하는 방법

 

데이터 복구 기능 이용하기

 

다음은 엑셀에 데이터 복구 기능을 이용하는 것입니다. 복구 작업하기 전에 원본 파일이 훼손될 수 있으므로 별도의 복사 파일을 하나 만듭니다. 엑셀을 실행해서 복사한 파일을 열어야겠죠. [파일] > [열기] 메뉴를 클릭합니다

엑셀 Excel 파일이 손상되어서 열리지 않을 때 조치하는 방법

 

파일 열기 팝업창의 열기 버튼에 보시면 여러가지 옵션들이 있습니다. 버튼 바로 옆에 화살표를 클릭하면 볼 수 있는데, 그 중 제일 하단에 있는 [열기 및 복구] 메뉴를 선택합니다

엑셀 Excel 파일이 손상되어서 열리지 않을 때 조치하는 방법

 

처음에는 [복구] 메뉴를 클릭해서 진행합니다. [복구]는 되었는데 예상 했던 것과 다르다면 [데이터 추출]을 한번 더 해 줍니다. 그런데 복구 했는데도 안 된다면 데이터 추출을 시작하세요

엑셀 Excel 파일이 손상되어서 열리지 않을 때 조치하는 방법

 

데이터 추출을 하게 되면 값만 할 것인지 수식도 같이 추출할 것인지 묻습니다. 값으로 추출하면 수식으로 계산된 결과값만 나오게 됩니다. 꼭 필요한 수식이 있다면 수식 복구를 하는 것이 좋겠죠.

엑셀 Excel 파일이 손상되어서 열리지 않을 때 조치하는 방법

 

이름 관리자와 스타일을 매크로 소스로 제거하기

 

다음은 VBA 코드를 이용해서 이름 관리자와 스타일을 모두 제거하는 것입니다. 이름 관리자가 얽혀서 제대로 표현이 안 되는 경우가 있기 때문입니다. 화면에 보이지는 않지만 내부에는 설정이 되어 있기 때문에 매크로로 전부 삭제할 수 있습니다. 아래에 올려 둔 샘플 소스를 복사해서 실행하기 위해 [개발 도구] > [Visual Basic] 리본 메뉴를 클릭합니다

엑셀 Excel 파일이 손상되어서 열리지 않을 때 조치하는 방법

 

VBA 소스 에디터 창을 띄웠다면 소스를 입력하기 위한 모듈을 추가해야 합니다. [삽입] > [모듈]을 선택하시면 왼쪽 탐색기에 모듈이 하나 생성됩니다

엑셀 Excel 파일이 손상되어서 열리지 않을 때 조치하는 방법

  

생성된 모듈에 아래 두 함수를 붙여 넣습니다. DeleteNames() 함수는 이름관리자를 삭제하는 소스이며 DeleteStyles() 는 스타일을 삭제합니다. 소스를 보시면 아시겠지만 문서에 있는 이름관리자 개체(ThisWorkbook.Names) 를 가져와서 For 문을 돌이고 있습니다.

 

Sub DeleteNames()

 

    Dim n As Name

    Dim lngCount As Long

   

    On Error Resume Next

   

    lngCount = ThisWorkbook.Names.Count

   

    For Each n In ThisWorkbook.Names

        n.Visible = True

        n.Delete

    Next n

   

    MsgBox " " & lngCount & "개의 [이름], " & lngCount - ThisWorkbook.Names.Count & "개의 [이름]삭제 완료."

 

End Sub

 

Sub DeleteStyles()

 

    Dim lng As Long

    Dim lngCount As Long

   

    lngCount = ThisWorkbook.Styles.Count

   

    On Error Resume Next

    For lng = ThisWorkbook.Styles.Count To 1 Step -1

        ThisWorkbook.Styles(lng).Delete

    Next lng

 

    MsgBox " " & lngCount & "개의 [스타일], " & lngCount - ThisWorkbook.Styles.Count & "개의 [스타일]삭제 완료."

 

End Sub

 

Posted by 녹두장군