Skip to Content
0
Former Member
Sep 10, 2007 at 12:12 PM

Problem with activating the current sheet in Excel with OLE

736 Views

I use the OLE method for creating an Excel Workbook . My Workbook has 3 sheets .

The data that i pass to the first Sheet is ok.

When i try to pass the data at the second sheet it doesn't work !!!!.Also I can't change the name of the current sheet (Activated ????).

All this take place in a DO...LOOP .

FORM CREATE_EXCEL.
  CREATE OBJECT APPLICATION 'EXCEL.APPLICATION'.
  SET PROPERTY OF APPLICATION 'DisplayAlerts' = 0.

  CALL METHOD OF APPLICATION 'WORKBOOKS' = WORKBOOK.
  IF VIS = 'X'.
    SET PROPERTY OF APPLICATION 'VISIBLE' = 1.
  ELSE.
    SET PROPERTY OF APPLICATION 'VISIBLE' = 0.
  ENDIF.

  SET PROPERTY OF APPLICATION 'SheetsInNewWorkbook' = 1.
  CALL METHOD OF WORKBOOK 'ADD'.

ENDFORM.                    "CREATE_EXCEL

...........

...........

*&---------------------------------------------------------------------*
*&      Form  CREATE_SHEET
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM CREATE_SHEET.
  DATA : TIM TYPE I.

  DO NUMS TIMES.

   SCNT = SY-INDEX.
   
    IF SY-INDEX GT 1.
      CALL METHOD OF APPLICATION 'WORKSHEETS' = SHEET .
      CALL METHOD OF SHEET 'ADD'.
      FREE OBJECT SHEET.
    ELSE.
       CALL METHOD OF APPLICATION 'WORKSHEETS' = SHEET EXPORTING #1 = SCNT.
    ENDIF.

    CALL METHOD OF SHEET 'Activate' .
    SET PROPERTY OF SHEET 'NAME' = TIM.


    PERFORM COL_NAMES .   "Making the Column titles
    PERFORM FILL_SHEET.      "Insert the data

    FREE OBJECT SHEET.
    FREE OBJECT CELLS.
    FREE OBJECT EXCEL.

    TIM = TIM + 1.

  ENDDO.
ENDFORM.                    "CREATE_SHEET

.........

.........

Points will be rewarded (As usual !!!!!!)