
나는 많은 시트, 매크로 및 계산이 진행되는 통합 문서를 가지고 있습니다. 이제 이 시트를 보내야 합니다(어제 이전에는 예상하지 못함). 사용자가 다음을 수행할 수 있도록 어떻게 잠그나요?
- 매크로에 액세스하거나 볼 수 없나요?
- 숨겨진 시트를 숨기기 해제할 수 없나요?
- 코드를 볼 수 없거나 코드를 추가할 수 없습니다/
나는 변화시키고 싶은 세포들을 살펴보고 잠금을 해제했습니다. 버튼과 수식의 행을 숨긴 다음 잠급니다. 숨겨진 워크시트. 이제 워크시트를 비밀번호로 보호했습니다.
하지만,이로 인해 사용자가 매크로/코드에 액세스할 수 없게 됩니까?또는시트 숨기기 해제?그렇지 않은 경우 통합 문서를 올바르게/안전하게/완전히 잠그려면 어떻게 해야 합니까?
빅 브라더 유형의 보안 보호처럼 들리지만 상호 연결된 모든 셀이 실수로 변경되지 않았는지 확인하거나 실행할 필요가 없는 매크로가 실행되는지 확인하는 것뿐입니다.
많은 감사
남자 이름.
답변1
첫째, Excel의 대부분의 보호 기능은 다음과 같습니다.~ 아니다보안 기능. 대부분은 매우 쉽게 깨지거나 우회됩니다. 우발적인 손상을 방지하는 데는 문제가 없습니다. 하지만 자신이 무엇을 하고 있는지 알고 숨겨져 있는 부분을 실제로 보고 싶어하는 사람은 막을 수 없습니다.
즉, 다음은 몇 가지 답변입니다.
초기 보호
기본적으로 셀을 잠그고 필요한 항목을 숨기면서 이 내용을 다뤘습니다.
그런 다음 보호하십시오모든시트.
그런 다음 통합 문서 자체를 보호하십시오.
매우 숨겨진 시트
시트를 "매우" 숨길 수 있습니다. 즉, VBA를 통해서만 숨김을 해제할 수 있습니다(인터페이스의 숨기기 해제 목록에는 표시되지 않음). 이는 설정 변경을 트리거하기 위해 최소한 한 번 실행해야 하는 VBA 라인을 통해 간단히 수행되며, 한 번 실행되면 파일에 보관할 필요가 없습니다(그러나 숨김을 해제할 시트를 기억하는 데 유용할 수 있음). 나중에):
Sheets("Sheet1").Visible = xlVeryHidden
숨겨진 VBA 코드
프로젝트에 비밀번호를 설정하세요. VBA 편집기의 에서 모듈을 마우스 오른쪽 버튼으로 클릭하고 탭 에서 비밀번호를 Project Explorer
선택 하고 설정합니다 .<ProjectName> Properties
Protection
무차별 대입으로 열 수 있다는 점에 유의하세요.
숨겨진 매크로
여기서 누군가가 창을 열 때 매크로 목록에 매크로가 표시되는 것을 원하지 않는다는 뜻이라고 가정합니까 Run Macro
?
이렇게 하려면 원하는 매크로를 a Private Sub
또는 a로 만드십시오 Function
. 이렇게 하면 해당 매크로가 매크로로 표시되지 않지만 동일한 모듈의 다른 코드에서 호출할 수 있습니다.
사람들이 오는 걸 막을 수는 없을 것 같아요달리기보이는 매크로는 표시되지 않으며 숨겨진 매크로는 버튼에 할당할 수 없습니다.
답변2
수신자가 실수로 일부 비트를 변경하지 않도록 하려는 경우에는 Excel의 보호만으로 충분합니다. 그러나 통합 문서를 받는 사람이 볼 수 없도록 하고 싶은 기밀 데이터가 있는 경우에는 아무 소용이 없습니다.
서식은 표시하지 않고 데이터만 표시하려는 경우 모든 숨겨진 데이터를 "플러시"하는 간단한 방법은 각 시트를 CSV로 내보낸 다음 새 Excel 통합 문서로 다시 가져오는 것입니다. (두 번째 단계는 엄밀히 말하면 선택 사항이지만 사람들은 CSV 파일에 익숙하지 않기 때문에 예상대로 Excel 파일을 보내는 것이 좋습니다.)
사람들이 수정할 수 없는 보기 쉬운 출력을 원할 경우 시트를 PDF 파일로 인쇄하여 보내십시오.