Help with code

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

Guest

Hi

I have this on current event running ok...but I need to add something for X1
below.
I do not want to set X3 = true if X1 = Null
So I need two conditions in the same "if".

Private Sub Form_Current()
If Me!X1 = Me!X2 Then
Me!X3 = True
End If
End Sub


Thank you in advance

Mattias
 
Mattias said:
I have this on current event running ok...but I need to add something for X1
below.
I do not want to set X3 = true if X1 = Null
So I need two conditions in the same "if".

Private Sub Form_Current()
If Me!X1 = Me!X2 Then
Me!X3 = True
End If
End Sub


You won't set X3 if X1 is Null, even if X2 is also Null.
The If can not possibly succeed when either value is Null,
because Null represents a value of "unknown" and nothing is
ever equal to "unknown".

If you should need to check if something is Null, use the
IsNull function.
 
Well, if X1 is Null, your condition will never evaluate to True, even if X2
is also Null, because the expression Null = Null evaluates as Null. So your
existing test already excludes the condition where X1 is Null.

More generally, though, you can test multiple conditions in an If statement
like so ...

If (A = B) And (B <> C) Then ...

To check for Null values, don't use the = operator, use the IsNull function
....

If (A = B) And (Not IsNull(C)) Then ...

This stuff become easier to understand if you keep in mind that Null
represents an unknown value. Is one unknown value equal to another known or
unknown value? The answer is unknown, i.e., Null. Similarly, what is the
value of a known number multiplied by an unknown number? Again, the answer
is unknown, i.e., Null.

--
Brendan Reynolds (MVP)
http://brenreyn.blogspot.com

The spammers and script-kiddies have succeeded in making it impossible for
me to use a real e-mail address in public newsgroups. E-mail replies to
this post will be deleted without being read. Any e-mail claiming to be
from brenreyn at indigo dot ie that is not digitally signed by me with a
GlobalSign digital certificate is a forgery and should be deleted without
being read. Follow-up questions should in general be posted to the
newsgroup, but if you have a good reason to send me e-mail, you'll find
a useable e-mail address at the URL above.
 

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

Back
Top