Did you look at the VarType() function that Tarwn suggested?
Also be aware that "VB-style" languages will completely evaluate your conditionals...
What I'm trying to say is...
OK, in C-style you can do this with no errors:
[tt]if ((A>0) || (10/A > 1))[/tt]
But in VB-Style you could get a divide by zero error on this:
[tt]IF ((A>0) OR (10/A > 1)) THEN[/tt]
The reason is that the former will stop after the first item in the OR is true.... but the VB will evaluate ALL of the OR conditions. So in VB you need to write the logic like this:[tt]
IF (A>0) THEN
IF (10/A > 1) THEN[/tt]
I bring this up because, when you have the chance for getting a Null, it might be tempting to check IsNull() as part of a compound conditional with the other condistions being string functions like Trim() or other such string functions will barf if you feed them a Null.
A good way around this for string functions is to take advantage of the fact that a string plus a null equals a string... so an empty string plus a null equals an empty string.