Giaoan.link chia sẻ đến các bạn bài hướng dẫn Vba Excel Tạo Form đăng nhập Workbook excel. Sau đây là chức năng của form login.
- Form gồm có 2 trường: User và password
- Khi bạn đăng nhập sai user hoặc pass, sẽ có thông báo.
- Khi bạn đăng nhập quá số lần qui định thì thông báo và tắt form.
- Khi bạn nhập đúng user và pass thì sẽ vào được Workbook
Dưới đây là code vb trong các thành phần của form login:
Code phần module
Public LoginInstance As Integer
Code Buttom “cmdLogin”
Private Sub cmdLogin_Click()
Dim user As String
Dim password As String
Dim thongbao1 As String
Dim thongbao2 As String
thongbao1 = ChrW(272) & ChrW(259) & "ng nh" & ChrW(7853) & _
"p không thành công, m" & ChrW(7901) & "i b" & ChrW(7841) & "n th" & ChrW _
(7917) & " l" & ChrW(7841) & "i!"
thongbao2 = "B" & ChrW(7841) & "n " & ChrW(273) & "ã " & ChrW _
(273) & ChrW(259) & "ng nh" & ChrW(7853) & "p sai quá s" & ChrW(7889) & _
" l" & ChrW(7847) & "n qui " & ChrW(273) & ChrW(7883) & "nh!"
user = Me.txtUserID.Value
password = Me.txtPassword.Value
If (user = "admin" And password = "admin") Or (user = "user" And password = "user") Then
Unload Me
Application.Visible = True
Else
If LoginInstance < 3 Then
Application.Assistant.DoAlert "Thông báo!", thongbao1, msoAlertButtonOK, msoAlertIconWarning, msoAlertDefaultFirst, msoAlertCancelFirst, False
LoginInstance = LoginInstance + 1
Else
Application.Assistant.DoAlert "Thông báo!", thongbao2, msoAlertButtonOK, msoAlertIconCritical, msoAlertDefaultFirst, msoAlertCancelFirst, False
Unload Me
ThisWorkbook.Close savechanges:=False
Application.Visible = True
LoginInstance = 0
End If
End If
End Sub
Code Buttom “cmdClear”
Private Sub cmdClear_Click()
Me.txtUserID.Value = ""
Me.txtPassword.Value = ""
Me.txtUserID.SetFocus
End Sub
Code UserForm Initialize
Private Sub UserForm_Initialize()
Me.txtUserID.Value = ""
Me.txtPassword.Value = ""
Me.txtUserID.SetFocus
End Sub
Code UserForm Query Close
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = 0 Then Cancel = True
End Sub
Code “Workbook”
Private Sub Workbook_Open()
LoginInstance = 0
Application.Visible = False
formLogin.Show
End Sub