REPORT zz_test_excel.
DATA : excel_obj TYPE ole2_object,
book_obj TYPE ole2_object,
book type ole2_object,
sheet_obj TYPE ole2_object,
box TYPE ole2_object,
value type i,
cell_obj TYPE ole2_object.
if excel_obj-handle le 0.
CREATE OBJECT excel_obj 'EXCEL.APPLICATION'.
ENDIF.
IF sy-subrc NE 0.
ENDIF.
SET PROPERTY OF excel_obj 'VISIBLE' = 1."使excel可见(1:可见 0:后台运行不可见)
SET PROPERTY OF excel_obj 'SHEETSINNEWWORKBOOK' = 1."设置 Microsoft Excel 软件打开时,自动插入到新工作簿中的工作表数目
CALL METHOD OF excel_obj 'WORKBOOKS' = book_obj.
"由于Workbooks同时为属性,所以可以使用下面语句代替上面语句
*GET PROPERTY OF EXCEL 'Workbooks' = WORKBOOK_OBJ .
*CALL METHOD OF BOOK_OBJ 'ADD' .
CALL METHOD OF book_obj 'OPEN' = book EXPORTING #1 = 'C:\Users\DELL\Desktop\abc.xlsx' ."开文件
*CALL METHOD OF excel_obj 'sheets' = sheet_obj.
*CALL METHOD OF SHEET_OBJ 'Add'.
CALL METHOD OF book 'Worksheets' = sheet_obj
EXPORTING
#1 = 'Sheet1'.
*SET PROPERTY OF sheet_obj 'Name' = 'NAME'."sheet重命名
CALL METHOD OF sheet_obj 'CheckBox1' = box . " 获取activex checkbox 类型 excel里面要先添加名称为checkbox1的控件
get PROPERTY OF box 'VALUE' = value.
if value = 0.
value = 1.
ELSE.
value = 0.
endif.
SET PROPERTY OF box 'VALUE' = value.
CALL METHOD OF excel_obj 'CELLS' = cell_obj EXPORTING #1 = 2 #2 = 3.
SET PROPERTY OF cell_obj 'VALUE' = 66.
CALL METHOD OF book 'Save'.
CALL METHOD OF book 'Close'
EXPORTING
#1 = 0.
CALL METHOD OF excel_obj 'Quit'.
SAP ole 操作excel 控制checkbox检查框
于 2024-09-26 09:02:13 首次发布