is…() to test if a variable has a certain type or characteristic. These functions are especially useful when dealing with variants. isArray | |
isDate | |
isEmpty | Test if a variant is empty |
isError | |
isNumeric | |
isMissing | Check if an optional parameter was assigned a value when the sub/function was invoked. See here |
isNull | Test if a variant is null. |
isObject |
option explicit
sub main() ' {
dim lng as long
lng = 7
debug.print( isEmpty (lng) ) ' False
debug.print( isArray (lng) ) ' False
debug.print( isNumeric(lng) ) ' True
debug.print( isMissing(lng) ) ' False
debug.print( isNull (lng) ) ' False
debug.print( isObject (lng) ) ' False
dim var as variant
debug.print( isArray (var) ) ' False
debug.print( isEmpty (var) ) ' True
debug.print( isNumeric(var) ) ' True ' True although not assigned a value
debug.print( isMissing(var) ) ' False
debug.print( isNull (var) ) ' False
debug.print( isObject (var) ) ' False
var = " 7.3 "
debug.print( isArray (var) ) ' False
debug.print( isEmpty (var) ) ' False ' Because var is now assigned a value
debug.print( isNumeric(var) ) ' True
debug.print( isMissing(var) ) ' False
debug.print( isNull (var) ) ' False
debug.print( isObject (var) ) ' False
var = " 7.3 liters "
debug.print( isArray (var) ) ' False
debug.print( isEmpty (var) ) ' False
debug.print( isNumeric(var) ) ' False ' spaces are ok, but not letters.
debug.print( isMissing(var) ) ' False
debug.print( isNull (var) ) ' False
debug.print( isObject (var) ) ' False
var = null
debug.print( isArray (var) ) ' False
debug.print( isEmpty (var) ) ' False
debug.print( isNumeric(var) ) ' False
debug.print( isMissing(var) ) ' False
debug.print( isNull (var) ) ' True ' Because var is assigned null
debug.print( isObject (var) ) ' False
dim obj as excel.worksheet
debug.print( isArray (obj) ) ' False
debug.print( isEmpty (obj) ) ' False
debug.print( isNumeric(obj) ) ' False
debug.print( isMissing(obj) ) ' False
debug.print( isNull (obj) ) ' False
debug.print( isObject (obj) ) ' True
set obj = activeSheet ' Assigning a an object does not change returned values
debug.print( isArray (obj) ) ' False
debug.print( isEmpty (obj) ) ' False
debug.print( isNumeric(obj) ) ' False
debug.print( isMissing(obj) ) ' False
debug.print( isNull (obj) ) ' False
debug.print( isObject (obj) ) ' True
end sub ' }