关于 vba:在 Excel 用户窗体上单击”X”有时会关闭电子表格

Clicking "X" on an Excel userform sometimes closes spreadsheet

我正在编写一个电子表格,其中双击某些单元格会打开一个用户表单。当某些用户单击"X"关闭用户窗体时,整个工作簿都会关闭(这不是预期的行为)。如果单元格有内容,就会发生这种情况;如果单元格为空白,则用户窗体关闭时工作簿不会关闭。

这是调用用户表单的一般代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Dim requestID As Long
Dim rowCount As Long

rowCount = UsedRange.Rows.Count

If (Target.Row > 2) And (Target.Row <= rowCount) Then
    requestID = Cells(Target.Row, 1)
    Select Case Target.Column
        Case 2 To 4
            requestUpdateForm.populate requestID
            requestUpdateForm.Show

        Case 5
            initialSearchForm.populate requestID
            initialSearchForm.Show

        'etc, more forms using Case statements

    End Select
End If

我以前见过这种行为,但相反:单击"X"关闭从空白单元格打开的表单会关闭工作簿,当我创建一个新工作簿并复制时,这个问题就消失了所有的代码都进去了。

让我感到困惑的是,这个错误发生在一个用户的系统上,而不是另一个用户的系统上,即使两者都安装了相同的 Excel。


可能你的系统安装excel有问题。

尝试重新安装或修复安装。


我解决了它...通过重新启动 - 只需关闭计算机并再次打开它。

就是这样。我不知道为什么它起作用了,但它起作用了。