I am not sure this will help but from a .net application, one does the following:
dim xlApp As Excel.Application
dim xlBook As Excel.Workbook
public sub OpenXLBook(optional filename as string="",optional visible as boolean=true)
if (xlApp is nothing) then
xlApp = new Excel.ApplicationClass()
endif
if (filename.trim.length=0) then
xlBook=xlApp.Workbooks.Add() ' opens new blank book
else
xlBook=xlApp.Workbooks.Open(filename) ' opens given name
endif
xlApp.visible = visible
end sub
caveat, catch and show errors if possible. also, check whats running when you are thru xlApp.Quit() as you may have to add GC (garbage collection) to clean up memory when through.