엑셀 시트에 중요한 데이터가 있거나 보안상 특정 시트를 숨기고 싶을때 시트 숨기기를 합니다.
일반적으로 시트 탭에서 [숨기기] 하면 시트는 숨겨 집니다.
이부분은 모두 아실것 같고... 그런데 일반적인 시트 숨기기는 누구나 다 잘 알고 있습니다.
그래서 단순히 시트 숨기기로 해서 파일을 전송 하려고하니 왠지 찜찜합니다.
시트를 아무도 열수 없도록 꽁꽁 숨기고 싶을때... 어떻게 할까요?
일반적인 시트 숨기기 / 숨기기 취소 |
1. 시트탭에서 우측마우스 클릭하고 위 그림처럼 [숨기기]를 선택하면 시트는 사라집니다.
2. 반대로 [숨기기 취소]를 하면 아래와 같이 [숨기기 취소창]이 열리고 숨겨진 시트를 선택해서 [확인] 하면 시트는 다시 나타납니다.
3. 파일을 받았을 때 시트가 숨겨져 있는지는 어떻게 알까요?
4. 시트탭에서 우측마우스 클릭하면 1번 그림과 같이 [숨기기 취소]가 희미하게 나타나면 숨겨진 시트가 없고 2번처럼 진하게 나타나면 숨겨진 시트가 있습니다.
시트 꽁꽁 숨기기 |
1. 시트탭의 우측마우스 클릭하고 [코드보기]를 클릭합니다.
2. 위 그림과 같이 Visual Basic Editor 창이 열립니다. [Alt + F11] 하셔도 됩니다.
3. ① 과 같이 숨길 시트를 선택하고 아래 속성창에서 Visible 속성을 ② xlSheetVeryHidden 을 선택하면 Sheet2는 완전 숨겨지게 됩니다.
4. 시트탭에서 [숨기기 취소]로 시트를 나타나게 할 수 없습니다.
5. 이 방법도 아는 사람이 많아서 누군가 열수 있다면?? 물론 VBA에 비밀번호를 걸면 됩니다.(맨 아래 비밀번호 설정 참조)
※ Visible 속성상수
xlSheetVisible = 보이기
xlSheetHidden = 숨기기
xlSheetVeryHidden = 꽁꽁 숨기기
시트 숨기기 매크로 만들기 |
자주 사용하는 파일이라면 VBA 비밀번호 해제하기도 번거롭고 해서 VBA를 활용하면 훨씬 편리하겠죠?
1. 위 그림과 같이 아래 코드를 현재통합문서나 모듈을 새로 생성해서 입력합니다.
Sub 시트숨기기()
If Sheet2.Visible = xlSheetVeryHidden Then '--- 시트2가 꽁꽁 숨겨졌을때
비번확인 = InputBox("비밀번호를 입력하세요")
If 비번확인 = "1234" Then '---비밀번호가 일치할때 시트보이기
Sheet2.Visible = xlSheetVisible
Else
MsgBox ("비밀번호가 틀립니다.")
Exit Sub
End If
Else
Sheet2.Visible = xlSheetVeryHidden
End If
End Sub
2. 시트숨기기 매크로는 [개발도구] - [매크로] 또는 [Alt + F8]으로 실행 할 수 있습니다.
3. 그렇지만 버튼을 하나 만들어 사용하면 더 편리 하겠죠.
4. 4각형을 그리고 텍스트 입력 후 우측 마우스 클릭하고 [매크로 지정] 클릭하면 위 그림과 같이 매크로 실행 버튼을 만들 수 있습니다.
5. 마지막으로 Visual Basic Editor 창에서 [도구] - [Visual Project 속성]을 클릭하면 속성창이 나타납니다.
6. 읽기전용 체크 하시고 암호를 입력하면 어느 누구도 숨겨진 시트를 열수 없습니다.
※ 저장은 매크로 통합문서로 저장해야 합니다.
첨부파일 보기 |
'EXCEL > VBA' 카테고리의 다른 글
엑셀 셀병합 단축키(그룹별 병합 및 해제) (5) | 2017.02.06 |
---|---|
엑셀 VBA 동적배열변수 선언하기 (0) | 2017.02.05 |
엑셀 VBA 배열 선언하기 (0) | 2017.02.04 |
엑셀 콤보박스(ActiveX컨트롤)에 리스트 입력방법 (3) | 2017.02.04 |
엑셀 MsgBox 활용하기 (0) | 2017.01.30 |