VBA Check if variable is empty VBA Check if variable is empty vba vba

VBA Check if variable is empty


How you test depends on the Property's DataType:

| Type                                 | Test                            | Test2| Numeric (Long, Integer, Double etc.) | If obj.Property = 0 Then        | | Boolen (True/False)                  | If Not obj.Property Then        | If obj.Property = False Then| Object                               | If obj.Property Is Nothing Then || String                               | If obj.Property = "" Then       | If LenB(obj.Property) = 0 Then| Variant                              | If obj.Property = Empty Then    |

You can tell the DataType by pressing F2 to launch the Object Browser and looking up the Object. Another way would be to just use the TypeName function:MsgBox TypeName(obj.Property)


To check if a Variant is Null, you need to do it like:

Isnull(myvar) = True

or

Not Isnull(myvar)


For a number, it is tricky because if a numeric cell is empty VBA will assign a default value of 0 to it, so it is hard for your VBA code to tell the difference between an entered zero and a blank numeric cell.

The following check worked for me to see if there was an actual 0 entered into the cell:

If CStr(rng.value) = "0" then    'your code here'End If