Consultor Eletrônico



Kbase P123412: How to run a Microsoft EXCEL macro from 4GL?
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   4/20/2007
Status: Unverified

GOAL:

How to run a Microsoft EXCEL macro from 4GL?

FIX:

The following 4GL procedure opens an existing Microsoft EXCEL spreadsheet, ("C:\WRK91E\MyExcelSheet.xls"), and runs an EXCEL Macro, ("myExcelMacro"), that was previously saved in it:
DEFINE VARIABLE chExcelApplication AS COM-HANDLE NO-UNDO.
DEFINE VARIABLE chExcelWorkbook AS COM-HANDLE NO-UNDO.

/* Initialize Excel, File and Title Lists */
CREATE "Excel.Application" chExcelApplication.

/* Open the spreadsheet where the EXCEL Macro is saved */
chExcelWorkbook = chExcelApplication:Workbooks:Open("C:\WRK91E\MyExcelSheet.xls").

/* Run the EXCEL Macro by using it name. */
chExcelApplication:RUN("myExcelMacro").

/* Confirm the Macro ran as desired by examining Spreadsheet */
chExcelApplication:Visible = true.

/* Cleanup by releasing all objects */
RELEASE OBJECT chExcelWorkbook NO-ERROR.
RELEASE OBJECT chExcelApplication NO-ERROR.