VBA에서 매크로 보호

Iqra Hasnain 2024년2월15일
  1. VBA에서 매크로를 볼 수 없도록 보호
  2. 매크로가 VBA에서 실행되지 않도록 보호
VBA에서 매크로 보호

매크로가 VBA에서 보고 실행되지 않도록 보호하는 방법을 소개합니다. 또한 매크로의 암호를 설정하는 여러 단계를 소개합니다.

VBA에서 매크로를 볼 수 없도록 보호

데이터를 보호하는 것은 매우 중요합니다. 우리는 누군가가 그것을 어떻게 사용할지 모릅니다. 통합 문서와 워크시트에 암호를 입력하기만 하면 보호할 수 있으므로 Excel의 매크로가 표시되지 않도록 보호할 수도 있습니다.

먼저 원하는 워크시트에 명령 단추를 추가합니다.

워크시트에 CommandButton 추가

그런 다음 볼 수 없도록 보호하려는 간단한 매크로를 만듭니다. 아래와 같이 시트 안의 셀에 값을 할당하는 간단한 매크로를 만듭니다.

Private Sub CommandButton1_Click()
Range("D1").Value = "This is a protected cell"
End Sub

출력:

VBA에서 보호할 매크로 만들기

이제 VBA의 메뉴 모음에서 도구를 선택합니다. 목록이 나타나면 VBAProject 속성을 선택합니다.

VBA 프로젝트 속성이 열리면 일반보호 탭이 표시됩니다.

VBA 1단계에서 매크로 보호

보호 탭을 선택하고 보기용 프로젝트 잠금을 선택해야 합니다.

확인을 위해 비밀번호를 두 번 입력해야 합니다. 그런 다음 아래와 같이 OK를 선택해야 합니다.

VBA 2단계에서 매크로 보호

변경 사항을 저장하고 Excel 파일을 닫은 다음 다시 엽니다. VBA에서 코드를 보려고 하면 대화 상자가 나타납니다.

VBA에서 파일을 보려면 올바른 암호를 입력해야 합니다.

비밀번호 상자

명령 버튼을 클릭하여 여전히 코드를 실행할 수 있지만 올바른 암호를 입력하지 않으면 더 이상 코드를 보거나 편집할 수 없습니다.

매크로가 VBA에서 실행되지 않도록 보호

매크로가 VBA에서 실행되지 않도록 보호하려는 상황만 있습니다. 이 경우 비밀번호 보호 도구로 Application.InputBox를 사용할 수 있습니다.

사용자가 상자 안에 올바른 단어를 입력하면 코드가 실행됩니다. 그렇지 않으면 잘못된 메시지를 표시하고 코드 실행을 중지합니다.

VBA를 사용하여 Excel의 특정 셀에 값을 입력하는 예를 살펴보겠습니다. 아래와 같이 위의 방법을 사용하여 VBA 코드가 실행되지 않도록 보호합니다.

Sub Pass()
Dim password As Variant
passcode = Application.InputBox("Enter Pass Code", "Password Protected")

Select Case passcode
    Case Is = False
    Case Is = "password"
        Range("B1").Value = "Code executed!"
    Case Else
        MsgBox "Incorrect Pass Code"
End Select
End Sub

출력:

VBA에서 실행 방지

이런 식으로 VBA를 사용하여 매크로를 보고 실행하지 못하도록 쉽게 보호할 수 있습니다.