*&---------------------------------------------------------------------**& Report ZDEMO15*&*&---------------------------------------------------------------------**&*&*&---------------------------------------------------------------------*REPORT zdemo15.DATA:BEGIN OF gs_itab, matnr TYPE makt-matnr, maktx TYPE makt-maktx, END OF gs_itab, gt_itab LIKE TABLE OF gs_itab.DATA:gv_lines TYPE i.INCLUDE ole2incl.DATA: gv_excel TYPE ole2_object, " Excel object gv_mapl TYPE ole2_object, " list of workbooks gv_map TYPE ole2_object, " workbook gv_zl TYPE ole2_object, " cell gv_f TYPE ole2_object. " font* start ExcelCREATE OBJECT gv_excel 'EXCEL.APPLICATION'.PERFORM err_hdl.SET PROPERTY OF gv_excel 'Visible' = 1.PERFORM err_hdl.* get list of workbooks, initially emptyCALL METHOD OF gv_excel 'Workbooks' = gv_mapl.PERFORM err_hdl.* add a new workbookCALL METHOD OF gv_mapl 'Add' = gv_map.PERFORM err_hdl.* output column headings to active Excel sheetPERFORM fill_cell USING 1 1 1 '物料编码'.PERFORM fill_cell USING 1 2 1 '物料描述'.SELECT matnr maktx INTO TABLE gt_itab FROM makt UP TO 10 ROWS.gv_lines = 1.LOOP AT gt_itab INTO gs_itab. gv_lines = gv_lines + 1. PERFORM fill_cell USING gv_lines 1 0 gs_itab-matnr. PERFORM fill_cell USING gv_lines 2 0 gs_itab-maktx.ENDLOOP.* disconnect from ExcelFREE OBJECT gv_excel.PERFORM err_hdl.*&---------------------------------------------------------------------**& Form fill_cell*&---------------------------------------------------------------------** text*----------------------------------------------------------------------** -->I text* -->J text* -->BOLD text* -->VAL text*----------------------------------------------------------------------*FORM fill_cell USING i j bold val. CALL METHOD OF gv_excel 'Cells' = gv_zl EXPORTING #1 = i #2 = j. PERFORM err_hdl. SET PROPERTY OF gv_zl 'Value' = val . PERFORM err_hdl. GET PROPERTY OF gv_zl 'Font' = gv_f. PERFORM err_hdl. SET PROPERTY OF gv_f 'Bold' = bold . PERFORM err_hdl.ENDFORM. "fill_cell* output column headings to active Excel sheet*&---------------------------------------------------------------------**& Form err_hdl*&---------------------------------------------------------------------** text*----------------------------------------------------------------------*FORM err_hdl. IF sy-subrc 0. WRITE: / 'Fehler bei OLE-Automation:'(010), sy-subrc. STOP. ENDIF.ENDFORM. " ERR_HDL