메인 컨텐츠로 가기

Excel에서 사용자가 개별 워크시트를 보호하기 위해 암호를 설정하는 방법은 무엇입니까?

Excel에서는 시트마다 다른 암호를 설정할 수 있습니다. 즉, 한 사용자는 하나의 암호를 사용하여 한 워크시트를 변경할 수 있고 다른 사용자는 다른 암호를 사용하여 다른 워크시트를 변경할 수 있습니다. 그러나 때로는 각 사용자가 자신의 시트만 보고 액세스할 수 있기를 원할 수도 있습니다. 엑셀에서 해결이 가능한가요?


각 워크시트를 개별적으로 보호하고 사용자의 워크시트 액세스를 제한하려면 아래 VBA 코드를 적용하십시오.

1. 새 통합 문서를 열고 "Main"이라는 새 시트를 만듭니다(스크린샷 참조).

2. 그런 다음, Alt + F11 키를 눌러 응용 프로그램 용 Microsoft Visual Basic 창, 더블 클릭 이 워크북 왼쪽에서 프로젝트 -VBAProject 창에서 빈 코드 모듈을 연 다음 다음 VBA 코드를 복사하여 코드 창에 붙여넣습니다(스크린샷 참조).

VBA 코드: 사용자가 개별 시트를 보호하기 위해 암호 설정

Option Explicit
Dim gUserName As String
Dim gUserPass As String
Private Sub Workbook_Open()
'Updateby ExtendOffice
Dim xWShs As Sheets
Dim xWSh As Worksheet
Dim xUserName As String
Dim xPass As String
Dim xBolH As Boolean
GTINPUT:
xUserName = InputBox("Enter the user name")
If TypeName(xUserName) = "String" Then
    If xUserName = "" Then
        Exit Sub
    End If
End If
xUserName = LCase(xUserName)
xPass = InputBox("User name:" & xUserName & Chr(13) & Chr(10) & "Enter the password:")
If TypeName(xPass) = "String" Then
    If xPass = "" Then
    MsgBox "The password is incorrect, please enter the user name and password again."
    GoTo GTINPUT
    End If
Else
    MsgBox "The password is incorrect, please enter the user name and password again."
    GoTo GTINPUT
End If
Set xWShs = Worksheets
xBolH = False
For Each xWSh In Worksheets
    If xWSh.Name = xUserName Then
    xBolH = True
    Exit For
    End If
Next
If xBolH Then
Set xWSh = xWShs(xUserName)
On Error GoTo GTINPUT2
xWSh.Unprotect (xPass)
xWSh.Visible = True
xWSh.Activate
Else
Set xWSh = xWShs.Add
xWSh.Name = xUserName
xWSh.Activate
End If
gUserName = xUserName
gUserPass = xPass
Exit Sub
GTINPUT2:
    MsgBox "The password is incorrect, please enter the user name and password again."
    GoTo GTINPUT
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim xWSh As Worksheet
On Error Resume Next
Set xWSh = Worksheets(gUserName)
xWSh.Protect Password:=gUserPass, DrawingObjects:=False, Contents:=True, Scenarios:= _
False, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True, AllowInsertingColumns:=True, AllowInsertingRows _
:=True, AllowInsertingHyperlinks:=True, AllowDeletingColumns:=True, _
AllowDeletingRows:=True, AllowSorting:=True, AllowFiltering:=True, _
AllowUsingPivotTables:=True
For Each xWSh In Worksheets
    If xWSh.Name <> "Main" Then
        xWSh.Visible = xlSheetVeryHidden
    End If
Next xWSh
ActiveWorkbook.Save
End Sub

3. 그런 다음 커서를 끝 부분에 놓습니다. 개인 서브 Workbook_Open () 스크립트를 누르고 F5 이 코드를 실행하는 키입니다. 이제 팝업된 프롬프트 상자에 이 사용자에 대한 시트를 만들 사용자 이름을 입력합니다(스크린샷 참조).

4. 그런 다음 OK 버튼을 누르고 다음 프롬프트 상자에 이 시트를 보호하기 위한 암호를 입력합니다(스크린샷 참조).

5. 클릭으로 이동 OK 버튼을 누르면 사용자 이름으로 명명된 새 시트가 한 번에 생성되며 필요에 따라 해당 사용자에 대한 데이터를 생성할 수 있습니다. 스크린샷 참조:

6. 사용하려는 다른 시트를 하나씩 생성하려면 위의 3-5 단계를 반복하십시오.

7. 시트를 만든 후 다음을 클릭하여 현재 통합 문서를 저장합니다. 입양 부모로서의 귀하의 적합성을 결정하기 위해 미국 이민국에 > 다른 이름으로 저장., 에서 다른 이름으로 저장 대화 상자에서 파일 이름을 지정한 다음 Excel 매크로 사용 통합 문서 (* .xlsm) 형식 형식으로 저장 드롭 다운 목록, 스크린 샷 참조 :

8. 그런 다음 저장 버튼을 클릭하여 이 파일을 저장합니다.

9. 그런 다음 통합 문서를 닫고 다시 연 다음 콘텐츠 사용 수식 입력줄 상단에서 코드를 활성화하려면 스크린샷을 참조하세요.

10. 이제 특정 사용자가 특정 시트를 열려면 사용자 이름과 암호를 입력하라는 메시지 상자가 나타납니다.

11. 마지막으로 이 통합 문서를 다른 사용자에게 보낼 때 사용자 이름과 암호를 사용자에게 보내야 합니다. 자신의 시트만 열고 편집할 수 있으며 다른 워크시트를 볼 수 있는 권한이 없습니다.


  • 슈퍼 포뮬러 바 (여러 줄의 텍스트와 수식을 쉽게 편집 할 수 있습니다.) 레이아웃 읽기 (많은 수의 셀을 쉽게 읽고 편집합니다.) 필터링 된 범위에 붙여 넣기...
  • 셀 / 행 / 열 병합 및 데이터 보관; 셀 내용 분할; 중복 행과 합계 / 평균 결합... 중복 셀 방지; 범위 비교...
  • 중복 또는 고유 선택 행; 빈 행 선택 (모든 셀이 비어 있음); 슈퍼 찾기 및 퍼지 찾기 많은 통합 문서에서; 무작위 선택 ...
  • 정확한 사본 수식 참조를 변경하지 않고 여러 셀; 참조 자동 생성 여러 시트에; 글 머리 기호 삽입, 확인란 등 ...
  • 즐겨 찾기 및 빠른 수식 삽입, 범위, 차트 및 그림; 셀 암호화 암호로; 메일 링리스트 생성 이메일 보내기 ...
  • 텍스트 추출, 텍스트 추가, 위치 별 제거, 공간 제거; 페이징 부분합을 만들고 인쇄합니다. 셀 내용과 주석 간 변환...
  • 슈퍼 필터 (다른 시트에 필터 구성표 저장 및 적용) 고급 정렬 월 / 주 / 일, 빈도 등 특수 필터 굵은 기울임 꼴로 ...
  • 통합 문서와 워크 시트 결합; 키 열을 기반으로 테이블 병합; 데이터를 여러 시트로 분할; xls, xlsx 및 PDF 일괄 변환...
  • 피벗 테이블 그룹화 기준 주 번호, 요일 등 ... 잠금 해제되고 잠긴 셀 표시 다른 색상으로; 수식 / 이름이있는 셀 강조 표시...
kte 탭 201905
  • Word, Excel, PowerPoint에서 탭 편집 및 읽기 사용, Publisher, Access, Visio 및 Project.
  • 새 창이 아닌 동일한 창의 새 탭에서 여러 문서를 열고 만듭니다.
  • 생산성을 50% 높이고 매일 수백 번의 마우스 클릭을 줄입니다!
officetab 하단
Comments (1)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
How would you then allow for an admin user to see all of those password protected sheets?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations