>=TYPE('myform.dataenvironment.cursor23') && may return "O" if object exists
Edward,
A better check would be;
=TYPE('myform.dataenvironment.cursor23.Name') && which will be "C" if the object exists
because, if the object ever existed the check for type O fails due to the fact that the property remains type O even though its value is NULL. Checking the Name property of an object for type C will work because if the value of the roperty is NULL the name property does not exist.