Kuk,
Será isto que pretendes???
Código COBOL:
WORKING-STORAGE SECTION.
01 LINHA PIC X(1024).
01 OLE-ERR-METHOD PIC X(256).
01 OLE-ERR-INFO.
03 OLE-ERR-TYPE PIC X(001).
03 OLE-ERR-WCODE PIC X(002).
03 ROLE-ERR-WCODE REDEFINES OLE-ERR-WCODE PIC S9(04) COMP-5.
03 OLE-ERR-SCODE PIC X(004).
03 ROLE-ERR-SCODE REDEFINES OLE-ERR-SCODE PIC S9(09) COMP-5.
PROCEDURE DIVISION.
DECLARATIVES.
OLE-ERRO SECTION.
USE AFTER EXCEPTION OLE-EX.
INVOKE EXCEPTION-OBJECT "GET-ERROR-TYPE"
RETURNING OLE-ERR-TYPE.
IF OLE-ERR-TYPE = "1"
INVOKE EXCEPTION-OBJECT "GET-SCODE" RETURNING ROLE-ERR-SCODE
INVOKE EXCEPTION-OBJECT "GET-SCODE-TEXT" RETURNING LINHA
MOVE LINHA TO OLE-ERR-METHOD
******** MOVE POW-FALSE TO "xlFileStatus" OF POW-SELF
******** MOVE 0 TO "MousePointer" OF POW-SELF
******** MOVE "N" TO FILEOPEN
GO TO MAIN-99-EXIT
ELSE
INVOKE EXCEPTION-OBJECT "GET-WCODE" RETURNING OLE-ERR-WCODE
INVOKE EXCEPTION-OBJECT "GET-SCODE" RETURNING OLE-ERR-SCODE
***** MOVE 0 TO "MousePointer" OF POW-SELF.
***** MOVE "N" TO FILEOPEN
GO TO MAIN-99-EXIT.
END DECLARATIVES.
Espero que te ajude.
Saludos,
Rui Pinto