VBA code for empty txt field

  • Thread starter AccessUser777 via OfficeKB.com
  • Start date
A

AccessUser777 via OfficeKB.com

Hi all,
New to VBA, so forgive my ignorace.

I have the following:
user form
combo box: cmbYESNO
text field: txtIFNOWHY

What I'm trying to accomplish is making sure that the user doens't forget to
populate the cmbYESNO and depending on the value of this combo box, whether
or not txtIFNOWHY needs to be filled out. I have the following code which i
picked up from a differnt thread on this site, which works for ensuring that
the cmbYESNO is filled out, but i can't seem to get the second part of the
code. Any help is appreciated. Thanks
Here is my code:

If Trim(Me.cmbYESNO.Value) = "" Then
Me.cmbYESNO.SetFocus
MsgBox "PLEASE INDICATE IF REVERSAL WAS SAVED"
If Trim(Me.cmbYESNO.Value) = "NO" Then
Me.txtIFNOWHY.SetFocus
If Trim(txtIFNOWHY.Value) = "" Then
MsgBox "PLEASE ENTER REASON REVERSAL WAS NOT SAVED"
Exit Sub
 
C

Chip Pearson

It appears that you are missing some End If and Else statements. You
need something like

If Trim(Me.cmbYESNO.Value) = "" Then
Me.cmbYESNO.SetFocus
MsgBox "PLEASE INDICATE IF REVERSAL WAS SAVED"
Else
If Trim(Me.cmbYESNO.Value) = "NO" Then
Me.txtIFNOWHY.SetFocus
Else
If Trim(txtIFNOWHY.Value) = "" Then
MsgBox "PLEASE ENTER REASON REVERSAL WAS NOT SAVED"
Exit Sub
End If
End If
End If

Cordially,
Chip Pearson
Microsoft MVP 1998 - 2010
Pearson Software Consulting, LLC
www.cpearson.com
[email on web site]
 
D

Dave Peterson

Nothing to do with your code...

But you may want to consider using a checkbox--checked means yes, unchecked
means no. As a user, I would find that more consistent with other forms I have
to fill out.

And it may make the code slightly easier, too.

If Me.chkbxYESNO.Value = true Then
'ok???
else
if trim(txtifnowhy.value) = "" then
me.txtifnowhy.setfocus
MsgBox "PLEASE ENTER REASON REVERSAL WAS NOT SAVED"
Exit Sub
end if
end if

===
You could use a pair of optionbuttons if you wanted, too.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top