excel vba创建登录屏幕

excel vba创建登录屏幕,excel,forms,vba,login,Excel,Forms,Vba,Login,提前谢谢你的帮助。我正在为一些工作簿创建一个登录屏幕,当工作簿打开时,我有“userform1.show”,在userform中我硬编码了用户名和密码。当userform1弹出询问用户名和密码时,我可以单击X,它只是关闭表单,用户仍然可以使用工作簿。如何让X关闭整个工作簿。我不知道X在VB中叫什么。我尝试了“application.enablecancelkey”和所有3个选项,但都不起作用 A) 这样做对吗? B) 如果是,我该把它放在哪里 必须按如下方式设置QueryClose事件: Pri

提前谢谢你的帮助。我正在为一些工作簿创建一个登录屏幕,当工作簿打开时,我有“userform1.show”,在userform中我硬编码了用户名和密码。当userform1弹出询问用户名和密码时,我可以单击X,它只是关闭表单,用户仍然可以使用工作簿。如何让X关闭整个工作簿。我不知道X在VB中叫什么。我尝试了“application.enablecancelkey”和所有3个选项,但都不起作用

A) 这样做对吗?
B) 如果是,我该把它放在哪里

必须按如下方式设置QueryClose事件:

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
   If MsgBox("Exit?", vbOKCancel) = vbOK Then
      ThisWorkbook.Close
   Else
      Cancel = True
   End If
End Sub

请做出您认为需要的调整,以更好地适应您的实际情况。

您必须如下设置QueryClose事件:

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
   If MsgBox("Exit?", vbOKCancel) = vbOK Then
      ThisWorkbook.Close
   Else
      Cancel = True
   End If
End Sub
请做出您认为需要的调整,以更好地适应您的实际情况。

您可以这样写

Private Sub UserForm_QueryClose(cancel As Integer, CloseMode As Integer)
    If CloseMode = 0 Then
        ThisWorkbook.Close
    End If
End If
或者,您也可以防止登录表单被“X”关闭

这就是我们登录的方式…

您可以编写

Private Sub UserForm_QueryClose(cancel As Integer, CloseMode As Integer)
    If CloseMode = 0 Then
        ThisWorkbook.Close
    End If
End If
或者,您也可以防止登录表单被“X”关闭


这就是我们登录的方式…

为什么不使用密码保护文件?为什么不使用密码保护文件?上面的代码在X按钮上起作用,但在我输入用户名和密码并关闭工作簿后,现在给了我msgbox。我错过了什么?我有你的密码above@bdubb-我发布的代码就是一个例子,因为我已经写了,你必须进行调整。虽然我很确定要做什么并不难,但为了更好地指导您正确的方向,您必须提供更多的源代码。上面的代码在X按钮上工作,但在我输入用户名和密码并关闭工作簿后,现在给我msgbox。我错过了什么?我有你的密码above@bdubb-我发布的代码就是一个例子,因为我已经写了,你必须进行调整。尽管我很确定要做什么并不难,为了更好地指导您正确的方向,您必须提供更多的源代码。谢谢skofgar。这很好,但登录后,我必须启用宏,然后我的登录框弹出。如果我退出,它会关闭登录,但仍会提示我保存(我想一旦我接受宏,它就正式捕获了幕后的内容?)。无论如何,如果我在保存框中取消,它仍然允许我进入工作表。如何阻止这种情况发生?我们公司使用登录名来了解谁正在通过Excel工具访问数据库,以及谁正在从Excel工具向数据库上载某些内容。为了避免出现“宏接受”窗口,您可以使用在公司所有计算机上使用的签名对Excel工作表进行数字签名。。然而,如果宏在第一时间被关闭,登录将永远不会出现,任何人都将能够访问内容。。因此,文件密码保护(chris neilsen已经提到)是我所知道的唯一解决方案。这很好,但登录后,我必须启用宏,然后我的登录框弹出。如果我退出,它会关闭登录,但仍会提示我保存(我想一旦我接受宏,它就正式捕获了幕后的内容?)。无论如何,如果我在保存框中取消,它仍然允许我进入工作表。如何阻止这种情况发生?我们公司使用登录名来了解谁正在通过Excel工具访问数据库,以及谁正在从Excel工具向数据库上载某些内容。为了避免出现“宏接受”窗口,您可以使用在公司所有计算机上使用的签名对Excel工作表进行数字签名。。然而,如果宏在第一时间被关闭,登录将永远不会出现,任何人都将能够访问内容。。因此,文件密码保护(chris neilsen已经提到)是我知道的唯一解决方案