Refreshing form problem (1 Viewer)

BennyLinton

Registered User.
Local time
Today, 10:17
Joined
Feb 21, 2014
Messages
263
I have a form that displays a complex set of alert buttons based upon a criteria. The code is much abbreviated but the problem is when a set of events is launched from the case statement it "sticks" that is if the case is 'nothing' (Active case) it should show no buttons but it does. Is there a way to requery the form to wipe out the undesired events that show the buttons?:

Code:
Private Sub Form_Current()

Dim iethicsresult As Boolean
iethicsresult = Me.ethicsHold + Me.ethicsFlag
If iethicsresult < 0 Then
    Me.ethicsLabel.Visible = True
Else
    Me.ethicsLabel.Visible = False
End If

Select Case Me.CertStatusID

    Case 3 'Inactive
    
    Me.Label247.Visible = True
    Me.Label248.Visible = True
    Me.Label249.Visible = True
    Me.Label250.Visible = True
    Me.Label251.Visible = True
    Me.Label252.Visible = True
    Me.Label253.Visible = True
    Me.Label254.Visible = True
    
    Me.Label270.Visible = False
    Me.Label271.Visible = False
    Me.Label272.Visible = False
    Me.Label273.Visible = False
    Me.Label274.Visible = False
    Me.Label276.Visible = False
    Me.Label277.Visible = False
    
    Me.Label290.Visible = False
    Me.Label291.Visible = False
    Me.Label292.Visible = False
    Me.Label293.Visible = False
    Me.Label294.Visible = False
    Me.Label295.Visible = False
    
    Case 4 'Expired Full
    
    Me.Label270.Visible = True
    Me.Label271.Visible = True
    Me.Label272.Visible = True
    Me.Label273.Visible = True
    Me.Label274.Visible = True
    Me.Label276.Visible = True
    Me.Label277.Visible = True
    
    Me.Label247.Visible = False
    Me.Label248.Visible = False
    Me.Label249.Visible = False
    Me.Label250.Visible = False
    Me.Label251.Visible = False
    Me.Label252.Visible = False
    Me.Label253.Visible = False
    Me.Label254.Visible = False
    
    Me.Label290.Visible = False
    Me.Label291.Visible = False
    Me.Label292.Visible = False
    Me.Label293.Visible = False
    Me.Label294.Visible = False
    Me.Label295.Visible = False

    Case 2 'Active
    
    Me.Label247.Visible = False
    Me.Label248.Visible = False
    Me.Label249.Visible = False
    Me.Label250.Visible = False
    Me.Label251.Visible = False
    Me.Label252.Visible = False
    Me.Label253.Visible = False
    Me.Label254.Visible = False
    
    Me.Label270.Visible = False
    Me.Label271.Visible = False
    Me.Label272.Visible = False
    Me.Label273.Visible = False
    Me.Label274.Visible = False
    Me.Label276.Visible = False
    Me.Label277.Visible = False
    Me.Label254.Visible = False
    
    Me.Label290.Visible = False
    Me.Label291.Visible = False
    Me.Label292.Visible = False
    Me.Label293.Visible = False
    Me.Label294.Visible = False
    Me.Label295.Visible = False
 

theDBguy

I’m here to help
Staff member
Local time
Today, 10:17
Joined
Oct 29, 2018
Messages
21,496
Hi. Did you include a Case Else block in your code?
 

MajP

You've got your good things, and you've got mine.
Local time
Today, 13:17
Joined
May 21, 2018
Messages
8,555
'I would try hiding all the labels first then unhide as needed. But I am not sure I understand the issue. You need to tag the labels.
Code:
dim ctrl as access.control
for each ctrl in me.controls
  if ctrl.tag = "H" then ctrl.visible = false
next ctrl
'Unhide as needed
Select Case Me.CertStatusID

    Case 3 'Inactive
    
    Me.Label247.Visible = True
    Me.Label248.Visible = True
    Me.Label249.Visible = True
    Me.Label250.Visible = True
    Me.Label251.Visible = True
    Me.Label252.Visible = True
    Me.Label253.Visible = True
    Me.Label254.Visible = True
    
        
    Case 4 'Expired Full
    
    Me.Label270.Visible = True
    Me.Label271.Visible = True
    Me.Label272.Visible = True
    Me.Label273.Visible = True
    Me.Label274.Visible = True
    Me.Label276.Visible = True
    Me.Label277.Visible = True
    
end select
 

Users who are viewing this thread

Top Bottom