Excel VBA: 阻止用户表单重新打开
Excel VBA: Stop userform from reopening
我在工作中有两个用户表单sheet 当分别从单元格 G5 的下拉列表中选择是或否时打开。
每次用户继续在工作sheet 的其他地方(在 G5 以外的单元格中)输入数据时,用户表单 reopens/reappears 仍然如此。
有没有办法确保用户窗体仅在 G5 中的值更改时打开?
(Application.EnableEvents = True 需要打开,因为 sheet 下方还有更多用户表单。)
在此先感谢您的帮助!
这是我的代码:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = True
Set Target = Range("G5")
Application.EnableEvents = False
If Target = "No" Then
Form1.Show
ElseIf Target = "Yes" Then
From2.Show
End If
Application.EnableEvents = True
End Sub
类似
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Target.Address = "$G" Then
If Target = "No" Then
Form1.Show
ElseIf Target = "Yes" Then
From2.Show
End If
End If
Application.EnableEvents = True
End Sub
我在工作中有两个用户表单sheet 当分别从单元格 G5 的下拉列表中选择是或否时打开。 每次用户继续在工作sheet 的其他地方(在 G5 以外的单元格中)输入数据时,用户表单 reopens/reappears 仍然如此。 有没有办法确保用户窗体仅在 G5 中的值更改时打开?
(Application.EnableEvents = True 需要打开,因为 sheet 下方还有更多用户表单。)
在此先感谢您的帮助!
这是我的代码:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = True
Set Target = Range("G5")
Application.EnableEvents = False
If Target = "No" Then
Form1.Show
ElseIf Target = "Yes" Then
From2.Show
End If
Application.EnableEvents = True
End Sub
类似
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Target.Address = "$G" Then
If Target = "No" Then
Form1.Show
ElseIf Target = "Yes" Then
From2.Show
End If
End If
Application.EnableEvents = True
End Sub