DalHyang

 

 

안녕하세요 달향입니다

오늘은 업무중에 많이들 접해 보셨을 스트레스의 주범 엑셀 시트 복사시

"이동하거나 복사하려는 시트에 대상 워크시트에 있는 이름 ***

 (이건 명칭 다틀려요서 그냥**로표시) 이 있습니다" 일명 [이름중복으로 인해 Y버튼을 계속 눌러야 되는 상황]이름 충돌 오류 해결하는 방법입니다

 

몇해 전에 저도 신입사원 때 저 오류 때문에 호되게 당했던 뼈아픈 기억이 있는데요

엑셀로 몇백페이지 시트가 되는걸  작업 완료후 하나의 이동/복사 했는데 ㅠㅠ

30분동안 YYYYY를 눌러야되는 사태가 발생했었죠 그때 완전 맨붕...

당장 공무원한테 내역서를 보내줘야 되는데 등에 식은 땀이 주르르 날정도 였죠

YYYY 막누르다가 엑셀 다운되기도 하고 암튼 엄청 골치였죠

 

그당시 해결책이 없나 네이버검색, 구글 검색, 엄청 했었는데 방법을 찾지 못했더랬죠

대부분 해결책이란게  Ctrl+A로 전체를 복사해서 새시트에 붙여넣고 서식(행열 간격 등)을

수정하라는게 최고의 답변이였습니다.

막 주변에선 선임들이 바이러스라는 분위기로 몰고 갔고 지식인에서도 바이러스라고 

쓸데없는 답변들이 많았죠 지금생각하면 웃음만 나요^^

 

간단한 매크로로 쉽게 아주 간단히 끝낼수 있으니까 말이죠

 

그럼 간단하게 해결하는 방법을 사진으로 알려드릴께요 그냥 따라하시면되요

일단 문제가 생기는 엑셀 파일을 오픈합니다.

아래사진처럼 원하는 시트를 복사하면 이미 같은 이름이 있으니 Y(예)를 클릭해

사용하거나 아니요(Y)를 클릭해 새 이름을 입력해라 라고 나오는데요

 

 

 

당황하지 마시고

바로 Alt + F11키를 클릭 하면 Viual Basic 매크로 실행창이 팝업 됩니다.

 

이 메크로 창에서 복사해서 오류가나는 복사원본 시트를 클릭후

오른쪽 마우스로 클릭 → 삽입(N) → 모듈(M) 버튼을 클릭

 

저기 적힌 코드는 제가 복사 넣은 후 스샷 찍은거구요

아무것도 없는 흰색 바탕만 보일꺼에요

 

이제 아래 코드를 복사해서 넣고 저장하기

 

Sub Delete_Names()

 

Dim n As Name

 

On Error Resume Next

 

For Each n In ThisWorkbook.Names

 

n.Visible = True

 

n.Delete

 

Next n

 

End Sub

 

 

저장하기 누르면 매크로 제외 통합 문서에 저장할 수 없습니다.

라고 나오는데 그냥 예(Y)눌러 주시면고

 

 

매크로 단축키인 Alt + F8번을 누르면 매크로 팝업창이 뜹니다

아래 그림처럼 나오면 성공~~~한거에요 바로 실행 누르면

"이동하거나 복사하려는 시트에 대상 워크시트에 있는

이름 *** 이 있습니다" 이놈 다시는 안나타 납니다

 

 

간단하죠? 어렵다구요?? 모르시겠다구요? 코드 복사가 안되거나 귀차니즘이 발동하시는 분들을 위해

(사실 저도 코드 복사해 넣기 귀찮아서 따로 저장해 놓은거 ㅋㅋ) 티스토리 블로그 시작하고 처음으로

파일 올려드려요 매크로 파일입니다

 

DalHyang.bas

사용법은 똑같은데요 문제 되는 파일을 열어서 Alt+F11로 VBA매크로창을 띄운 뒤

파일 불러오기에서 다운받은 파일을 불러서 창을 닫고 Alt+F8 키를 눌러서

실행 하시면 된답니다

 

업무만 해도 스트레스받을게 산더미 인데

엑셀 오류따위에 열받지 말자구요~~!!!