엑셀 해당이름 충돌 해결방법
IT정보회사나 일반 가정 등에서 엑셀을 자주 사용하실텐데요. 기존 엑셀시트를 복사하거나 이동 할 때마다 나타나는 메시지 해결방법에 대해 알려드리도록 하겠습니다.
저 같은 경우에도 회사에서 엑셀을 자주 이용하는 편인데, 한 개의 문서 안에 있는 Sheet를 복사해서 활용하고자 할 때 이름 충돌 메시지가 나오고 있습니다.
해결 방법은 간단합니다.
Excel 문서 안에 있는 숨어있는 서식(이름)을 삭제해주면 됩니다.
참고로, 이러한 충돌이 발생되는 이유는 Excel 파일을 재생성하여 사용하는 경우 발생되며, Excel 자체에서 이름을 정의하여 사용함으로써, 이용자에게 좀 더 편리한 기능을 제공하고자 하는 경우가 되겠습니다.
즉, 기존에 있는 이름이 참조 대상의 연결 링크가 깨지거나 손상된 경우입니다.
위와 같이 "해당이름 XXX가 이미 있습니다. 이 이름을 사용하려면 [예]를 클릭하세요. 이름 또는 복사하려는 XXX의 이름을 변경하려면 [아니오]를 클릭하세요."
이 상태에서 갯수에 따라 다르지만 "예"를 한번씩 계속 누르거나, 계속 누르고 있으면 일단 해결이 되는데요.
이 방법은 일시적일 뿐, 정상 해결 방법이 아니죠.
▶ 엑셀 해당이름 충돌 해결 방법
해결을 위해서 상단 메뉴 "수식" -> "이름관리자"를 선택합니다.
이름 관리자를 실행하면, 위 그림과 같이 많은 이름들이 보이며, 값이나 참조 대상 등이 없는 값 등으로 나오는 것이 대부분입니다.
이 상태에서 해당 이름을 하나씩 또는 전부 선택해서 지우시면 됩니다.
전체 선택 방법은 맨 위 값을 클릭 한 후, Shift 키를 누른 상태에서 맨 아래 값을 클릭하면 됩니다. 이렇게 하면 전체 이름값이 선택되게 됩니다.
그리고, 나서 상단 "삭제" 버튼을 클릭한 후 팝업창에서 "확인"키를 누르면 됩니다.
이렇게 하면 끝이지만, 하나 더 해주셔야 할 것이 있습니다. 숨어있는 이름정의가 남아 있다면 똑 같은 문제가 발생하게 됩니다.
▶ 숨어 있는 이름도 삭제 필요
하단 탭에서 오른쪽 마우스를 클릭한 후 "코드 보기"를 클릭합니다.
코드보기를 선택하면 Visual Basic 편집기 창이 열립니다.
이 곳에서 아래와 같은 내용을 입력하신 후, 실행(F5)해주면 됩니다.
Sub show_Names( )
Dim n As Name
For Each n In ThisWorkbook.Names
n.Visible = True
Next n
End Sub
복사가 안되면 excelname.txt
그리고 나서 다시 수식-> 이름관리자를 클릭해보면 보이지 않던 이름들이 나오게 됩니다.
똑같이 전부 선택한 다음, 삭제를 해주시면 됩니다.
다시, 이름관리자에 들어가보면 위와 같이 깨끗한 상태가 되고, 이후로 시트를 복사하거나 이동할 때, 해당이름 충돌과 같은 메시지는 더 이상 나오지 않게 됩니다.
도움 되셨기를 바랍니다.