Excel VBA - 单击工作簿以卸载用户窗体

时间:2012-04-04 14:51:52

标签: excel vba

我有一个用户表单,用于填充excel工作表,但允许显示工作簿底部的选项卡。当用户在打开用户窗体时单击其中一个选项卡时,没有任何操作。有没有办法在用户点击不属于表单的某些内容时卸载userform?

由于

1 个答案:

答案 0 :(得分:0)

这是一种方式,虽然我对它在实践中的效果有点怀疑。首先将Userform的ShowModal属性设置为False。这将允许用户在Userform外部单击并实际选择一些内容。

接下来,将此代码放入ThisWorkbook模块

Private Sub Workbook_SheetActivate(ByVal Sh As Object)

    On Error Resume Next
        Unload UserForm1

End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)

    On Error Resume Next
        Unload UserForm1

End Sub

当用户单击工作表标签或活动工作表中的单元格时,它将卸载用户表单。用户可能会点击其他一百个不会触发这些事件的地方,但它可能适用于您的情况。