Skip to Content
0
Former Member
Dec 30, 2009 at 08:16 AM

Cannot get BOOKMARK object in MS WORD via OLE Automation

178 Views

Hello! I have a problem. Cannot Get bookmark object. guru Please help me. code below:

PROGRAM ZZHR_OLE2_SUBROUTINS.
TYPE-POOLS: OLE2, CNTL.
DATA: WORD_OBJ type OLE2_OBJECT,
      SEL_OBJ type OLE2_OBJECT,
      APP_OBJ type OLE2_object,
      ACT_OBJ type OLE2_object,
      ACTWINDOW_OBJ type OLE2_object,
      BOOKMARKS_OBJ type OLE2_object,
      BOOKMARK_OBJ type OLE2_object,
      RANGE_OBJ type OLE2_OBJECT.


FORM ZHRUA_ORDER_T8_ITC USING APP type CNTL_HANDLE.
FIELD-SYMBOLS: <FS_DATA> type ANY TABLE.
data: MACRO_TAB type ZHR_S_MACRO_TAB occurs 0 WITH HEADER LINE.
ASSIGN ('(ZHRUA_ORDER_T8_ITC)MACRO_TAB[]') TO <fs_data>.
*ASSIGN ('(SAPLIPW4)MCHA-BWTAR') TO <FS>.
IF <fs_data> IS ASSIGNED.
  MACRO_TAB[] = <fs_data>.
ENDIF.

loop at MACRO_TAB.
translate   MACRO_TAB-PARAMETER1 to upper case.
shift MACRO_TAB-PARAMETER1 LEFT DELETING LEADING space.
WORD_OBJ = APP-OBJ.
GET PROPERTY OF WORD_OBJ 'Application' = APP_OBJ NO FLUSH.
 CALL METHOD cl_gui_cfw=>FLUSH.
check sy-subrc eq 0.
GET PROPERTY OF APP_OBJ 'ActiveDocument' = ACT_OBJ  NO FLUSH.
 CALL METHOD cl_gui_cfw=>FLUSH.
check sy-subrc eq 0.
GET PROPERTY OF ACT_OBJ  'Bookmarks'      = BOOKMARKS_OBJ NO FLUSH.
 CALL METHOD cl_gui_cfw=>FLUSH.
check sy-subrc eq 0.
*get PROPERTY OF BOOKMARKS_OBJ 'Item' = BOOKMARK_OBJ NO FLUSH EXPORTING #1 = MACRO_TAB-PARAMETER1 .
call method of BOOKMARKS_OBJ 'Item'  = BOOKMARK_OBJ  NO FLUSH." EXPORTING #1 = MACRO_TAB-PARAMETER1.
 CALL METHOD cl_gui_cfw=>FLUSH.
check sy-subrc eq 0.
call method of BOOKMARK_OBJ 'Select' NO FLUSH.
 CALL METHOD cl_gui_cfw=>FLUSH.
check sy-subrc eq 0.
get PROPERTY OF WORD_OBJ 'ActiveWindow' = ACTWINDOW_OBJ NO FLUSH.
 CALL METHOD cl_gui_cfw=>FLUSH.
check sy-subrc eq 0.
GET PROPERTY OF ACTWINDOW_OBJ 'Selection' = SEL_OBJ NO FLUSH.
 CALL METHOD cl_gui_cfw=>FLUSH.
check sy-subrc eq 0.

call METHOD of SEL_OBJ 'Delete'NO FLUSH  EXPORTING #1 = 1 #2 = 1.
 CALL METHOD cl_gui_cfw=>FLUSH.
endloop.
endform.