Computer >> 컴퓨터 >  >> 소프트웨어 >> Office

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

Excel로 업무를 진행하다 보면 보안상의 이유로 데이터를 암호화해야 할 때가 있습니다. Excel에서는 간단한 VBA 코드만으로 직접 암호화 함수를 만들어 데이터를 안전하게 보호할 수 있습니다. 이번 글에서는 Excel에서 암호화 기능을 만들고 활용하는 방법을 단계별로 자세히 소개합니다.

Excel에서 암호화 기능 만들기: 단계별 방법

이 섹션에서는 VBA 코드를 활용해 Excel에 암호화 기능을 구축하는 절차를 하나씩 살펴보겠습니다. 생각보다 어렵지 않으니 아래 순서대로 따라 해 보세요.

1단계: 암호화할 데이터 준비하기

  • 먼저 워크시트에 데이터를 입력합니다. 예제에서는 한 회사의 영업사원(Salesman), 급여(Salary), 지역(State) 정보로 구성된 데이터셋을 사용했으며, 급여 열의 데이터를 암호화해 보겠습니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

2단계: VBA 창 열기

  • 리본 메뉴에서 개발 도구(Developer) 탭을 클릭한 후 Visual Basic을 선택하면 VBA 편집기가 열립니다.
  • 또는 키보드에서 Alt + F11을 눌러도 동일하게 VBA 창을 열 수 있습니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

3단계: VBA 모듈에 코드 입력하기

  • VBA 창 상단 메뉴에서 삽입(Insert) > 모듈(Module)을 선택합니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

  • 그러면 새로운 모듈 창이 나타납니다.
  • 아래의 코드를 그대로 복사해서 붙여 넣습니다.
Private Function iStrTPsd(ByVal Txt As String) As Long
Dim xVl As Long
Dim xCha As Long
Dim xSf1 As Long
Dim xSf2 As Long
Dim J As Integer
Dim xLn As Integer
xLn = Len(Txt)
For J = 1 To xLn
xCha = Asc(Mid$(Txt, J, 1))
xVl = xVl Xor (xCha * 2 ^ xSf1)
xVl = xVl Xor (xCha * 2 ^ xSf2)
xSf1 = (xSf1 + 7) Mod 19
xSf2 = (xSf2 + 13) Mod 23
Next J
iStrTPsd = xVl
End Function
Private Function iEncryption(ByVal Pd As String, ByVal InTx As String, Optional ByVal Encc As Boolean = True) As String
Dim xOfset As Long
Dim xLn As Integer
Dim J As Integer
Dim xCha As Integer
Dim xOutTx As String
xOfset = iStrTPsd(Pd)
Rnd -1
Randomize xOffset
xLn = Len(InTx)
For J = 1 To xLn
xCha = Asc(Mid$(InTx, J, 1))
If xCha >= 32 And xCha <= 126 Then
xCha = xCha - 32
xOfset = Int((96) * Rnd)
If Encc Then
xCha = ((xCha + xOfset) Mod 95)
Else
xCha = ((xCha - xOfset) Mod 95)
If xCha < 0 Then xCha = xCha + 95
End If
xCha = xCha + 32
xOutTx = xOutTx & Chr$(xCha)
End If
Next J
iEncryption = xOutTx
End Function
Sub xEncryption_Range()
Dim xxRg As Range
Dim xxPsd As String
Dim xxTxt As String
Dim xxEnc As Boolean
Dim xxRet As Variant
Dim xxCell As Range
On Error Resume Next
xxTxt = ActiveWindow.RangeSelection.Address
Set xxRg = Application.InputBox("You need to select range:", "Excel Encryption", xxTxt, , , , , 8)
Set xxRg = Application.Intersect(xxRg, xxRg.Worksheet.UsedRange)
If xxRg Is Nothing Then Exit Sub
xxPsd = InputBox("Type your password:", "Excel Encryption")
If xxPsd = "" Then
MsgBox "Your password can't be empty", , "Excel Encryption"
Exit Sub
End If
xxRet = Application.InputBox("Insert 1 to encrypt cells or Insert 2 to decrypt cells", "Excel Encryption", , , , , , 1)
If TypeName(xxRet) = "xBoolean" Then Exit Sub
If xxRet > 0 Then
xxEnc = (xxRet Mod 2 = 1)
For Each xxCell In xxRg
If xxCell.Value <> "" Then
xxCell.Value = iEncryption(xxPsd, xxCell.Value, xxEnc)
End If
Next
End If
End Sub

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

4단계: 코드 실행으로 데이터 암호화하기

  • VBA 창에서 실행(Run) 버튼을 클릭합니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

  • 그러면 곧바로 매크로(Macros) 대화 상자가 나타나는데, 여기서 실행 버튼을 누릅니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

  • 이어서 Excel Encryption 대화 상자가 표시됩니다.
  • 암호화하고 싶은 셀 범위를 선택한 뒤 확인(OK)을 클릭합니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

  • 다시 대화 상자가 나타나면 사용할 비밀번호를 입력하고 확인을 누릅니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

  • 마지막 대화 상자가 나타나면 데이터를 암호화하기 위해 1을 입력하고 확인을 클릭합니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

최종 결과 확인

  • 워크시트로 돌아가면 선택했던 범위의 데이터가 암호화되어 있는 것을 확인할 수 있습니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

  • 암호화된 데이터를 다시 해독하려면 같은 코드를 다시 실행하고 앞선 과정을 반복하면 됩니다.
  • 다만 마지막 대화 상자에서 1 대신 2를 입력하세요.
  • 또한 복호화 시에는 반드시 암호화할 때 사용했던 것과 동일한 비밀번호를 입력해야 합니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

  • 그러면 암호화되었던 데이터가 원래대로 복원되는 것을 확인할 수 있습니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

함께 읽으면 좋은 글: Excel에서 셀 내용 암호화하는 방법

비밀번호로 Excel 파일 자체를 암호화하는 방법

이번에는 셀 단위가 아니라 파일 전체를 보호할 수 있도록, 파일을 열 때 비밀번호를 요구하도록 설정하는 방법을 알아보겠습니다.

  • 먼저 리본 메뉴에서 파일(File) 탭으로 이동합니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

  • 그다음 화면 좌측 패널에서 복사본 저장(Save a Copy) 옵션을 선택합니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

  • 나타난 창에서 옵션 더 보기(More options)를 클릭합니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

  • 이어서 다음 화면에서 도구(Tools) > 일반 옵션(General Options)을 차례로 선택합니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

  • 일반 옵션 대화 상자의 열기 암호(Password to open) 항목에 원하는 비밀번호를 입력하고 확인을 누릅니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

  • 암호 확인(Confirm Password) 대화 상자에 동일한 비밀번호를 한 번 더 입력한 뒤 확인을 클릭합니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

  • 마지막으로 파일을 저장하면 설정이 완료됩니다.
  • 이후부터는 해당 Excel 파일을 열 때마다 비밀번호를 입력해야 합니다.

Excel에서 암호화 기능 만드는 방법: VBA 코드부터 파일 비밀번호 설정까지 완벽 가이드

함께 읽으면 좋은 글: 비밀번호 없이 Excel 파일 복호화하는 방법

연습용 통합 문서 다운로드

이 글에서 사용한 연습용 통합 문서는 아래에서 내려받을 수 있습니다.

마치며

지금까지 Excel에서 데이터를 암호화하는 두 가지 방법, 즉 VBA 코드를 활용한 셀 단위 암호화와 파일 전체에 비밀번호를 설정하는 방법을 단계별로 살펴보았습니다. 궁금한 점이나 추가하고 싶은 내용이 있다면 댓글로 남겨 주세요.

관련 글

  • Excel에서 암호화 제거하는 방법
  • [해결 방법] 암호화된 Excel 파일을 열 수 없을 때

<< Excel 암호화 목록으로 돌아가기 | Excel 보호 | Excel 배우기