COMatePlus: Close open excel objects when a program crash
Posted: Fri Sep 14, 2018 2:54 pm
Hi! If I execute this code and it crash before ;CLOSE WORKBOOK or ;CLOSE EXCEL AND FREE THE OBJECT the object is kept in memory.
How can I close previous objects before running this program?
(If possible, of course)
Thank you in advance!
How can I close previous objects before running this program?
(If possible, of course)
Code: Select all
Protected ExcelObject.COMateObject,MyWorkbook
Protected Workbook.COMateObject
;EXCEL OBJECT CREATION
ExcelObject = COMate_CreateObject("Excel.Application")
If ExcelObject
MyWorkBook = ExcelObject\GetObjectProperty("Workbooks\Add")
EndIf
;SET IT INVISIBLE
ExcelObject\SetProperty("Visible = #False")
;HERE, OTHER PUREBASIC PROCEDURES
;WRITE A TEXT IN A CELL
ExcelObject\SetProperty("Cells("+ Str(1) + "," + Str(1) + ")\Value = '" + "I'm a text in a cell" + "'")
;OTHER PUREBASIC PROCEDURES
;SAVE WORKBOOK
Workbook=ExcelObject\GetObjectProperty("ActiveWorkbook")
If FileName <> ""
If Workbook
Workbook\Invoke("SaveAs('"+ "myExcelFile.csv"+"', " + Str(6) + ")")
Workbook\Release()
EndIf
EndIf
;CLOSE WORKBOOK
Workbook=ExcelObject\GetObjectProperty("ActiveWorkbook")
If Workbook
Workbook\Invoke("Close")
Workbook\Release()
EndIf
;CLOSE EXCEL AND FREE THE OBJECT
ExcelObject\Invoke("Quit()")
ExcelObject\Release()
Thank you in advance!