|
本帖最后由 hongyunhada 于 2022-6-26 11:43 编辑
各位VBA大神:
见贴好!如图所示,此登录界面,测试中,连自己也登录不了,是何原因?望指点迷津!万分感谢!
登录图
设置密码我是在公式名称管理器里面设置。(详细见附件)
代码如下:
- Private Sub denglu_QueryClose(Cancel As Integer, CloseMode As Integer)
- '当单击窗体右上角关闭按钮时,运行程序。
- If CloseMode <> 1 Then
- Cancel = 1
- End If
- End Sub
- Private Sub Cmd1_Click()
- Application.ScreenUpdating = False
- Static i As Integer
- If CStr(t1.Value) = Right(Names("UserName").RefersTo, Len(Names("UserName").RefersTo) - 1) And CStr(t2.Value) = Right(Names("UserWord").RefersTo, Len(Names("UserWord").RefersTo) - 1) Then
- Unload Me
- Application.Visible = True
- Else
- i = i + 1
- If i = 3 Then
- MsgBox "对不起,你无权打开工作簿!", vbInformation, "提示"
- ThisWorkbook.Close savechanges:=False
- Else
- MsgBox "输入错误,你还有" & (3 - i) & "次输入机会", vbExclamation, "提示"
- t1.Value = ""
- t2.Value = ""
- End If
- End If
- Application.ScreenUpdating = True
- End Sub
- Private Sub Cmd2_Click()
- Unload Me
- ThisWorkbook.Close savechanges:=False
- End Sub
- Private Sub cmd3_Click()
- Dim old As String, new1 As String, new2 As String
- old = InputBox("请输入原用户名:", "提示")
- new1 = InputBox("请输入新用户名:", "提示")
- new2 = InputBox("请再次输入新用户名:", "提示")
- If old <> "" And new1 <> "" Then
- If old = Right(Names("UserName").RefersTo, Len(Names("UserName").RefersTo) - 1) And new1 = new2 Then
- Names("UserName").RefersTo = "=" & new1
- ThisWorkbook.Save
- MsgBox "用户名修改完成,下次登录请使用新用户名", vbInformation, "提示"
- Else
- MsgBox "输入错误,修改没有完成", vbCritical, "错误"
- End If
- Else
- MsgBox "用户名不能为空", vbCritical, "错误"
- End If
-
- End Sub
- Private Sub cmd4_Click()
- Dim old As String, new1 As String, new2 As String
- old = InputBox("请输入原密码:", "提示")
- new1 = InputBox("请输入新密码:", "提示")
- new2 = InputBox("请再次输入新密码:", "提示")
- If old <> "" And new1 <> "" Then
- If old = Right(Names("UserWord").RefersTo, Len(Names("UserWord").RefersTo) - 1) And new1 = new2 Then
- Names("UserWord").RefersTo = "=" & new1
- ThisWorkbook.Save
- MsgBox "用户密码修改完成,下次登录请使用新密码", vbInformation, "提示"
- Else
- MsgBox "输入错误,修改没有完成", vbCritical, "错误"
- End If
- Else
- MsgBox "密码不能为空", vbCritical, "错误"
- End If
- End Sub
复制代码
|
|