본문 바로가기
■ 칼퇴를 위한 VBA : 사례/- VBA for 엑셀

VBA 코드로 엑셀 워크시트 보호 자동화하기

by 포탈메이커 2023. 7. 25.

VBA 코드로 엑셀 워크시트 보호 자동화하기

엑셀은 대부분의 기업과 개인에서 사용되는 가장 흔한 스프레드시트 소프트웨어입니다. 그리고 많은 경우, 엑셀 파일에는 중요한 정보가 저장되어 있기 때문에 보안 문제가 큰 관심사입니다. 엑셀 워크시트 보호는 중요한 데이터를 보호하기 위해 필요한 기능 중 하나입니다.

이번 포스팅에서는 VBA 코드를 사용하여 엑셀 워크시트 보호를 자동화하는 방법을 알아보겠습니다.


 

칼퇴키트, 업무용 도구모음

칼퇴를 위해 꼭 필요한 도구 모음을 제공합니다. 당장의 업무에 필요한 순간 사용하는 가벼운 메모장, 계산기, 변환기 등

portalmaker.backtohome.kr

 

1. VBA 코드로 워크시트 보호 설정하기

VBA를 사용하여 워크시트 보호를 자동화하려면 먼저 VBA 프로젝트 창을 열어야 합니다. VBA 프로젝트 창은 보통 Alt + F11 키를 눌러 엑셀 내에서 열 수 있습니다. VBA 프로젝트 창이 열리면 보호하려는 워크시트를 선택한 다음, 다음 코드를 입력하세요.

Sub ProtectSheet()
    Sheets("Sheet1").Protect Password:="password"
End Sub

위의 코드에서 "Sheet1"은 보호하려는 워크시트의 이름을 나타내며, "password"는 워크시트의 보호를 해제하기 위한 비밀번호입니다. 코드에 원하는 워크시트 이름과 비밀번호를 입력한 후에는 코드를 실행시켜 보호가 적용되는지 확인해볼 수 있습니다.


2. 엑셀 파일을 실행할 때 자동으로 보호 설정하기

VBA 코드를 사용하여 엑셀 파일을 실행할 때 자동으로 워크시트 보호를 설정할 수도 있습니다. 이를 위해 VBA 프로젝트 창에서 다음 코드를 입력하세요.

Private Sub Workbook_Open()
    Sheets("Sheet1").Protect Password:="password"
End Sub

위의 코드에서 "Sheet1"은 자동으로 보호를 설정하려는 워크시트의 이름을 나타내며, "password"는 워크시트의 보호를 해제하기 위한 비밀번호입니다. 코드를 입력한 후에는 엑셀 파일을 닫았다가 다시 열어보세요. 이제 워크시트가 자동으로 보호되는 것을 확인할 수 있을 것입니다.


3. 보호된 워크시트의 특정 셀 편집 허용하기

때로는 보호된 워크시트에서 일부 셀만 편집할 수 있도록 설정하고 싶을 수 있습니다. 이를 위해 다음 코드를 사용하세요.

Sub ProtectSheetWithExceptions()
    Dim sheet As Worksheet
    Set sheet = ThisWorkbook.Sheets("Sheet1")
    
    sheet.Protect Password:="password"
    sheet.Range("A1").Locked = False
    sheet.Range("B1").Locked = False
End Sub

위의 코드에서 "Sheet1"은 보호하려는 워크시트의 이름을 나타내며, "password"는 워크시트의 보호를 해제하기 위한 비밀번호입니다. 코드에서 Range("A1").Locked = FalseRange("B1").Locked = False는 워크시트에서 A1과 B1 셀을 편집 가능하도록 설정하는 코드입니다. 필요에 따라 셀의 범위와 편집 가능 여부를 수정할 수 있습니다.


4. 워크시트 보호 해제하기

워크시트 보호를 자동화했기 때문에 때로는 보호를 해제할 필요가 생길 수 있습니다. 다음 코드를 사용하여 보호된 워크시트를 해제할 수 있습니다.

Sub UnprotectSheet()
    Sheets("Sheet1").Unprotect Password:="password"
End Sub

위의 코드에서 "Sheet1"은 보호를 해제하려는 워크시트의 이름을 나타내며, "password"는 워크시트의 보호를 해제하기 위한 비밀번호입니다. 코드를 입력한 후에는 코드를 실행시켜 보호가 해제되는지 확인해보세요.


5. 마치며

VBA 코드를 사용하여 엑셀 워크시트 보호를 자동화할 수 있습니다. 보안을 유지하기 위해 중요한 데이터가 포함된 워크시트를 보호하는 것은 매우 중요한 일입니다. VBA를 사용하면 워크시트 보호를 간편하게 설정하고 제거할 수 있으므로, 엑셀 파일의 보안을 강화하기 위해 이러한 코드를 활용해보세요.



포스팅이 도움이 되셨다면 구독, 공감, 댓글 부탁드려요!

행복한 하루 되세요!