Hi Tom,
I have had some co-workers try your program as well. It worked fine in all cases.
It might also be a problem with the SEP separator. The current separator can be checked by printing X_OBJ'SEP$ after instantiating the X_OBJ object.
Setting X_OBJ'VISIBLE = 1 shows the Excel application and might help to see what it looks like immediately after the WRITE function is completed.
Version 16 is no longer supported. If the issue is still unresolved, you could download a newer version and retry your program using a demo activation. Assuming the issue still occurs, you could then open a support ticket. We would be interested in screen shots of the program as well as the results in excel etc.