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

VBA 코드로 엑셀 문서 보안 설정 자동화하기

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

VBA 코드로 엑셀 문서 보안 설정 자동화하기

엑셀을 사용하는 사람이라면 한 번쯤은 엑셀 문서의 보안 설정을 설정해야 할 일이 있을 것이다. 보안 설정을 통해 엑셀 문서의 무단 수정이나 접근을 방지할 수 있으며, 중요한 정보를 안전하게 보호할 수 있다. 하지만 매번 수동으로 보안 설정을 진행해야 한다면 번거로운 일이 될 수 있다. 이런 경우 VBA 코드를 사용하여 엑셀 문서의 보안 설정을 자동화할 수 있다.

이번 포스팅에서는 VBA 코드를 사용하여 엑셀 문서의 보안 설정을 자동화하는 방법을 알아보자.

 

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

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

portalmaker.backtohome.kr

 

1. 보안 설정 탭 열기

먼저 VBA 코드로 엑셀 문서를 자동으로 보안 설정하기 위해서는 보안 설정 탭을 열어야 한다. 보안 설정 탭을 열기 위해서는 다음과 같은 코드를 사용하면 된다.

Sub OpenSecurityTab()
    Application.Dialogs(xlDialogDocumentInspector).Show
End Sub

위 코드를 VBA 에디터에 입력한 후 실행하면 엑셀 문서의 보안 설정 탭이 열린다.


2. 보안 설정 변경하기

보안 설정 탭이 열린 후에는 다양한 보안 설정을 변경할 수 있다. 예를 들어, 암호 설정, 매크로의 실행 여부, 셀 보호, 워크시트 보호 등 다양한 설정이 가능하다. 이 설정들을 VBA 코드로 자동화하기 위해서는 해당 설정들을 코드로 작성해야 한다.

Sub ChangeSecuritySettings()
    ' 암호 설정
    ThisWorkbook.Password = "mypassword"
    
    ' 매크로의 실행 여부 설정
    Application.AutomationSecurity = msoAutomationSecurityForceDisable
    
    ' 셀 보호 설정
    ThisWorkbook.Sheets("Sheet1").Protect Password:="sheet1password", UserInterfaceOnly:=True
    
    ' 워크시트 보호 설정
    ThisWorkbook.Sheets("Sheet2").Protect Password:="sheet2password", UserInterfaceOnly:=True
End Sub

위의 코드는 엑셀 문서의 암호 설정, 매크로의 실행 여부 설정, 셀 보호, 워크시트 보호를 변경하는 코드이다. 필요한 경우에 따라 이 코드를 수정하여 다양한 보안 설정을 변경할 수 있다.


3. 보안 설정 자동화하기

보안 설정 탭 열기와 보안 설정 변경 코드를 조합하여 보안 설정을 자동화하는 코드를 작성할 수 있다.

Sub AutoSecuritySetting()
    ' 보안 탭 열기
    Application.Dialogs(xlDialogDocumentInspector).Show

    ' 암호 설정
    ThisWorkbook.Password = "mypassword"
    
    ' 매크로의 실행 여부 설정
    Application.AutomationSecurity = msoAutomationSecurityForceDisable
    
    ' 셀 보호 설정
    ThisWorkbook.Sheets("Sheet1").Protect Password:="sheet1password", UserInterfaceOnly:=True
    
    ' 워크시트 보호 설정
    ThisWorkbook.Sheets("Sheet2").Protect Password:="sheet2password", UserInterfaceOnly:=True
    
    ' 작업 완료 메시지 표시
    MsgBox "보안 설정이 완료되었습니다.", vbInformation
End Sub

위의 코드는 보안 설정 탭을 열고 설정을 변경한 후에 작업이 완료되었다는 메시지를 표시하는 코드이다. 이 코드를 실행하면 엑셀 문서의 보안 설정이 자동으로 변경되며, 작업 완료 메시지가 나타난다.


4. 마치며

엑셀 문서의 보안 설정을 자동화하면 보안 설정 작업을 반복하지 않아도 되어 편리하고 시간을 절약할 수 있다. VBA 코드를 사용하여 엑셀 문서의 보안 설정을 자동화하는 방법을 알아보았다. 필요한 보안 설정을 코드로 작성하고 실행하면 엑셀 문서의 보안 설정이 자동으로 변경될 것이다. 보안 설정을 자동화하면 더 안전하고 효율적으로 엑셀 문서를 활용할 수 있으니, 엑셀 사용자라면 VBA 코드로 보안 설정 자동화를 시도해보는 것을 추천한다.



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

행복한 하루 되세요!