Cách khóa sheet trong excel không thể xem được nội dung nếu không nhập đúng mật khẩu

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

tamcao2811

Thành viên mới
Tham gia
31/10/23
Bài viết
6
Được thích
0
Hi All, không biết có cách nào để người dùng khác khi nhận file mở 1 sheet nào đó thì chặn không cho họ xem được nội dung bên trong không ạ , chẳng hạn như khi người nào đó nhấn vào sheet1 trong file excel sẽ hiện lên 1 form nhập mật khẩu trước khi nhập được mật khẩu thì không thể xem được nội dung bên trong
Em có thử làm với VBA nhưng nó chỉ hiện lên form còn nội dung trong sheet vẫn có thể thấy được
Code VBA
Mã:
#Sự kiện xác nhận khi nhập và kiểm tra mật khẩu

Private Sub CommandButton1_Click()

    Dim Password As String

    Dim CorrectPassword As String



 

    CorrectPassword = "TTF"



  

    Password = TextBox1.Text





    If Password = CorrectPassword Then

      

        Unload Me

        Sheets("Sheet1").Activate

    Else

      

        MsgBox "Mật khẩu không đúng. Vui lòng thử lại.", vbExclamation

        TextBox1.Text = ""

        TextBox1.SetFocus

    End If

End Sub
Mã:
#Sự kiện chuyển sheet để hiển thị form

Private Sub Workbook_SheetActivate(ByVal Sh As Object)

 

    If Sh.Name = "Sheet1" Then

        UserForm1.Show

    End If

End Sub
- đây là cách em đang là và có vẻ không hiệu quả không biết là có cách nào khác và hiệu quả hơn không mong mọi người cho ý tưởng và cách làm
 
Lần chỉnh sửa cuối:
Anh ơi, đg link hỏng rồi, phiền anh chia sẻ lại giúp/
Chổ này nè bạn.
Cái này mình tìm kiếm được mà.
 
Hi All, không biết có cách nào để người dùng khác khi nhận file mở 1 sheet nào đó thì chặn không cho họ xem được nội dung bên trong không ạ , chẳng hạn như khi người nào đó nhấn vào sheet1 trong file excel sẽ hiện lên 1 form nhập mật khẩu trước khi nhập được mật khẩu thì không thể xem được nội dung bên trong
Em có thử làm với VBA nhưng nó chỉ hiện lên form còn nội dung trong sheet vẫn có thể thấy được
Code VBA
Mã:
#Sự kiện xác nhận khi nhập và kiểm tra mật khẩu

Private Sub CommandButton1_Click()

    Dim Password As String

    Dim CorrectPassword As String



 

    CorrectPassword = "TTF"



 

    Password = TextBox1.Text





    If Password = CorrectPassword Then

   

        Unload Me

        Sheets("Sheet1").Activate

    Else

   

        MsgBox "Mật khẩu không đúng. Vui lòng thử lại.", vbExclamation

        TextBox1.Text = ""

        TextBox1.SetFocus

    End If

End Sub
Mã:
#Sự kiện chuyển sheet để hiển thị form

Private Sub Workbook_SheetActivate(ByVal Sh As Object)

 

    If Sh.Name = "Sheet1" Then

        UserForm1.Show

    End If

End Sub
- đây là cách em đang là và có vẻ không hiệu quả không biết là có cách nào khác và hiệu quả hơn không mong mọi người cho ý tưởng và cách làm
Note: Mình đã tìm được cách khá thủ công nhưng lại dễ làm hơn
=> mình sẽ vào VBA chọn vào sheet muốn không cho người khác xem tại phần Visble của Properties mình chọn sang "2-XlSheetVeryHidden" lúc này sheet đã bị ẩn đi và người dùng không thể chọn vào unhide để xem được trừ khi chỉnh lại ở phần VBA về lại ban đầu và để đảm bảo hơn mình sẽ đặt mật khẩu nếu muốn sử dụng VBA bằng cách vào phấn project properties -> Tab protection -> chọn lock project for viewing sau đó đặt mật khẩu ở dưới :V
 
Web KT
Back
Top Bottom