|
本帖最后由 小颖子的尾巴 于 2017-2-18 10:06 编辑
请问一下大家下面一段话运行错误是“1004”,应用程序或对象错误,要怎么修改。
If CStr(User.Value) = Right(Names("UserName").RefersTo, _
Len(Names("UserName").RefersTo) - 1) And CStr(Password.Value) _
= Right(Names("UserWord").RefersTo, Len(Names("UserWord").RefersTo) - 1) Then
Private Sub CmdCancel_Click() '当单击退出按钮时执行过程
Unload Me '关闭登录窗体
ThisWorkbook.Close savechanges:=False '关闭当前工作薄,不保存修改
End Sub
Private Sub CmdOk_Click() '单击"确定"按钮的时候执行过程
Application.ScreenUpdating = False '关闭屏幕更新
Static i As Integer '声明一个变量
'判断用户名和密码是否输入正确
If CStr(User.Value) = Right(Names("UserName").RefersTo, _
Len(Names("UserName").RefersTo) - 1) And CStr(Password.Value) _
= Right(Names("UserWord").RefersTo, Len(Names("UserWord").RefersTo) - 1) Then
Unload Me '关闭登录窗体
Application.Visible = True '显示Excel界面
Else
i = i + 1 '密码或用户名输入错误一次,变量i加1
If i = 3 Then '如果输错三次执行下面的语句
MsgBox "对不起,你无权打开工作薄!", vbInformation, "提示"
ThisWorkbook.Close savechanges:=False '关闭当前工作薄,不保存更改
Else '如果输错不满三次,执行下面的语句
MsgBox "输入错误,你还有" & (3 - i) & "次输入机会。", vbExclamation, "提示"
User.Value = "" '清除文字框中的用户名
Password.Value = "" '清除文字框中的密码
End If
End If
Application.ScreenUpdating = True '开启屏幕更新
End Sub
谢谢大家。
|
|