User form Command Buttons

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

Does anybody now how to code a button in a user form to not work until the
other buttons are clicked. for example i have 3 buttons one "OK" one "next"
one "close". I would like the user to click the ok button then the next,
then the close when theu are done. any help would be appreciated.

Thank you

J
 
By toggling the enabled property of the command buttons you can control the
flow. Something like this. buttons 2 and 3 are disabled at start up. When
button 1 is pressed button 2 is enabled. When button 2 is pressed button 3 is
enabled.

Private Sub CommandButton1_Click()
CommandButton2.Enabled = True
End Sub

Private Sub CommandButton2_Click()
CommandButton3.Enabled = True

End Sub

Private Sub UserForm_Initialize()
CommandButton1.Enabled = True
CommandButton2.Enabled = False
CommandButton3.Enabled = False
End Sub
 
Jim has provided a nice solution. If you have to have the buttons
enabled all the time you could do this:
You can hide a couple text boxes on your form with visible set to
false. On the UserForm Initialize, set the text boxes = to 0. On the
Click Events of each of the buttons, place some code to change the
textbox to 1. Then, on the Click Event of the Close button, place
some code to check to make sure that the value in both of those fields
is 1. If it's not, then one or both of the buttons haven't been
clicked.

UserForm Initialize
txtNext.Text=0
txtOK.Text=0

Click Even of Next button
Me.txtNext.Text = 1

Click Even of OK button
Me.txtOK.Text = 1

Click Event of Close button
If Me.txtNext=0 Or Me.txtOK.Text=0 then
Msgbox "Not Clicked"
Exit Sub
Else
'continue code
End If
 
Thank you worked great.

Jim Thomlinson said:
By toggling the enabled property of the command buttons you can control the
flow. Something like this. buttons 2 and 3 are disabled at start up. When
button 1 is pressed button 2 is enabled. When button 2 is pressed button 3 is
enabled.

Private Sub CommandButton1_Click()
CommandButton2.Enabled = True
End Sub

Private Sub CommandButton2_Click()
CommandButton3.Enabled = True

End Sub

Private Sub UserForm_Initialize()
CommandButton1.Enabled = True
CommandButton2.Enabled = False
CommandButton3.Enabled = False
End Sub
 
Back
Top