Disable selective events
Create a global variable in a standard module
Global fSuppressEvents As Boolean
and then in your code test it before showing the form say
If Not fSuppressEvents Then Show Userform1
and then set/reset that flag in you main code
'do something
Set fSuppressEvents =True
'do some more
fSuppressEvents = False
'etc.
--
__________________________________
HTH
Bob
"Patrick C. Simonds" wrote in message
...
I have to admit I have no idea of how to do that.
"Bob Phillips" wrote in message
...
Use a global boolean, set that when you want and react according to that
boolean.
--
__________________________________
HTH
Bob
"Patrick C. Simonds" wrote in message
...
In the code below I use Application.EnableEvents = False to prevent the
showing of UserForm1 while the code is running. The problem is that it
prevents all events from happening. Is there any way to prevent
UserForm1 from showing while still allowing other events to happen?
Private Sub CommandButton1_Click()
Unload End_Of_Month_Disposal
Application.EnableEvents = False
Application.ScreenUpdating = False
ActiveWorkbook.Worksheets("2009 Training").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("2009 Training").Sort.SortFields.Add
Key:=Range( _
"A3:A5000"), SortOn:=xlSortOnValues, Order:=xlAscending,
DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("2009 Training").Sort
.SetRange Range("A2:N5000")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("B2").Select
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
|