1. 首先要INCLUDEole2incl.
.
INCLUDE ole2incl.
DATA : gs_excel TYPE ole2_object, " EXCEL对象
gs_borders TYPEole2_object, " CELL的 border 对象
gs_wbooklistTYPE ole2_object , " EXCEL的workbooklist对象
gw_wbook TYPEole2_object,
gs_application TYPE ole2_object , " workbooklist 的 application 对象
gs_activesheet TYPEole2_object , " 实际控制的SHEET
gs_cell1 TYPEole2_object , " CELL对象(合并或者选择)
gs_cell2 TYPE ole2_object , " CELL对象(合并或者选择)
gs_cell3 TYPE ole2_object , " CELL对象(合并或者选择)
gs_font TYPE ole2_object , " 字体对象
gs_interior TYPEole2_object , " 指定CELL颜色的使用
gs_columns TYPE ole2_object. "CELL行对象
DATA : gv_sheet_name(20) TYPE c,
gv_line_cntrTYPE i, "line counter
gv_linnoTYPE i, "line number
gv_colnoTYPE i, "columnnumber
gv_intex(2)TYPE c .
主要使用这些
2. 现在开始,创建对象.
CREATEOBJECT gs_excel'EXCEL.APPLICATION'. " EXCEL的壳
SET PROPERTY OF gs_excel'Visible' = 1 . " 查看EXCEL赋值 TRUE
" 如果赋值为true的话可以看到数据很快的往EXCEL里穿进去
GET PROPERTY OF gs_excel 'Workbooks' = gs_wbooklist . "取出EXCEL的workbook
GET PROPERTY OF gs_wbooklist 'Application' = gs_application .
"取出workbook的application
SET PROPERTY OF gs_application 'SheetsInNewWorkbook' = 1 .
" 给application设置新的workbook
CALL METHOD OF gs_wbooklist 'Add'= gs_wbook . " 往workbooklist添加workbook
GET PROPERTY OF gs_application'ActiveSheet' = gs_activesheet .
" 取出激活的sheet
SET PROPERTY OF gs_activesheet 'Name' = "sheet1" . "设置sheet名
gv_line_cntr = 2 . "要控制的line counter
3. CELL合并
*--Select
CALL METHOD OF gs_excel 'CELLS' =gs_cell " gs_cell2 里添加 2列 5行
EXPORTING
#1 = 2
#2 = 5.
CALL METHOD OF gs_excel 'Cells' =gs_cell2 " gs_cell2 里添加 3列 15行
EXPORTING
#1 = 3
#2 = 15.
CALL METHOD OF gs_excel 'Range' = gs_cells
EXPORTING
#1 = gs_cell1
#2 = gs_cell2.
CALL METHOD OF gs_cells 'Select' . "选择CELL. 效果同于EXCEL里按SHIFT
*--Merging
CALL METHOD OF gs_cells 'Merge' . " 合并
CALL METHOD OF gs_cells'BorderAround' " 框线
EXPORTING
#1 = 1 " Continuous line
#2 = 2. " thick
CALL METHOD OF gs_excel 'Cells' =gs_cell1
EXPORTING
#1 = gv_line_cntr
#2 = 5.
"
SET PROPERTY OF gs_cell1 'VALUE'= "TEST". " 给合并的CELL赋值.
*--Formatting the title
GET PROPERTY OF gs_cell1 'Font' = gs_font . " 取出字体
SET PROPERTY OF gs_font 'Underline' = 2 . " 字体下划线
SET PROPERTY OF gs_font 'Bold' = 1 . " 加粗
SET PROPERTY OF gs_font 'Size' ='11'. " 大小
SET PROPERTY OF gs_cell1 'HorizontalAlignment' = -4108 . " 排序
GET PROPERTY OF gs_cell1 'Interior' = gs_interior . " 要控制的 interior
SET PROPERTY OF gs_interior 'ColorIndex' = 15 . " 颜色
SET PROPERTY OF gs_interior 'Pattern' = -4124 . " Pattern
SET PROPERTY OF gs_interior 'PatternColorIndex'= -4105 . " Pattern颜色
GET PROPERTY OF gs_cells'Columns' = gs_columns . " 要控制的 Columns
CALL METHOD OF gs_columns'AutoFit' . " 对齐
FREE: gs_excel,gs_wbooklist, gs_application, gs_wbook,
gs_activesheet,gs_sheets, gs_cell1,
gs_cell2,gs_cells, gs_range, gs_font, gs_interior,
gs_columns.
"释放内存
call method OF gs_wbooklist'CLOSE'. " 关闭workbooklist
call method of gs_excel'QUIT'. " 关闭EXCEL