Mon Site SAP | Accueil | Forum | ABAP Weblog | Liens | ABAPs | Livres | Humour | A propos... |
1. ABAP:
REPORT ZCALLWIN MESSAGE-ID 00. INCLUDE OLE2INCL. CONSTANTS: C_BOOKFILE(255) TYPE C VALUE 'D:\TEMP\TEST.XLS'. DATA: M_APP TYPE OLE2_OBJECT, M_BOOK TYPE OLE2_OBJECT, M_SHEET TYPE OLE2_OBJECT, M_RES TYPE OLE2_OBJECT, M_PATH(255) TYPE C. CREATE OBJECT M_APP 'EXCEL.APPLICATION'. IF SY-SUBRC NE 0. MESSAGE E368 WITH 'Create object failed'. ENDIF. CALL METHOD OF M_APP 'WORKBOOKS' = M_BOOK . CALL METHOD OF M_BOOK 'OPEN' EXPORTING #1 = C_BOOKFILE. CALL METHOD OF M_APP 'RUN' EXPORTING #1 = 'test.xls!Macro2'. CALL METHOD OF M_APP 'RANGE' = M_RES EXPORTING #1 = 'A1'. GET PROPERTY OF M_RES 'VALUE' = M_PATH. WRITE: / 'Windows Dir:', M_PATH. CALL METHOD OF M_APP 'SAVE'. CALL METHOD OF M_APP 'QUIT'. FREE OBJECT M_RES. FREE OBJECT M_BOOK. FREE OBJECT M_APP.2. Un fichier Excel d:\temp\test.xls contient le macro Visual Basic:
Declare Function GetWinDir Lib "kernel32" _ Alias "GetWindowsDirectoryA" (ByVal lpBuffer As String, _ ByVal nSize As Long) As Long Sub Macro2() Dim Path As String * 255 Dim Res As Integer Res = GetWinDir(Path, Len(Path)) Range("A1").Value = Path End SubPour plus d'infos sur utilisation de Win32 dans VB, allez a http://msdn.microsoft.com