ABAP 导出数据到EXCEL ,OLE

结果:

代码:

"导出EXCEL,OLE

TYPE-POOLS:OLE2.

DATA: GS_EXCEL TYPE OLE2_OBJECT ,

GS_WBOOKLIST TYPE OLE2_OBJECT ,

GS_APPLICATION TYPE OLE2_OBJECT ,

GS_WBOOK TYPE OLE2_OBJECT ,

GS_ACTIVESHEET TYPE OLE2_OBJECT ,

GV_SHEET_NAME(20) TYPE C,

GS_CELL1 TYPE OLE2_OBJECT ,

GS_CELL2 TYPE OLE2_OBJECT ,

GS_CELLS TYPE OLE2_OBJECT ,

SHEET TYPE OLE2_OBJECT,

GV_LINNO TYPE I.

DATA:LV_SELECTED_FOLDER TYPE STRING,LS_DESTINATION LIKE RLGRAP-FILENAME,P_OBJID TYPE WWWDATATAB-OBJID.

"用户选择路径 ,也可默认路径

CALL METHOD CL_GUI_FRONTEND_SERVICES=>DIRECTORY_BROWSE

CHANGING

SELECTED_FOLDER = LV_SELECTED_FOLDER

EXCEPTIONS

CNTL_ERROR = 1

ERROR_NO_GUI = 2

NOT_SUPPORTED_BY_GUI = 3

OTHERS = 4.

IF SY-SUBRC <> 0.

ENDIF.

IF LV_SELECTED_FOLDER = ''.

MESSAGE '保存路径为空!' TYPE 'S'.

EXIT.

ENDIF.

CONCATENATE LV_SELECTED_FOLDER '\' SY-DATUM '_' SY-UZEIT '.XLS' INTO LV_SELECTED_FOLDER."命名文件名称

GV_SHEET_NAME = 'SHEET1'."工作表命名

CREATE OBJECT GS_EXCEL 'EXCEL.APPLICATION' .

IF SY-SUBRC <> 0.

MESSAGE '不能打开EXCEL 对象,请检查系统是否安装Microsoft Excel!' TYPE 'S'.

EXIT.

ENDIF.

GET PROPERTY OF GS_EXCEL 'Workbooks' = GS_WBOOKLIST .

GET PROPERTY OF GS_WBOOKLIST 'Application' = GS_APPLICATION .

SET PROPERTY OF GS_APPLICATION 'SheetsInNewWorkbook' = 1 .

SET PROPERTY OF GS_APPLICATION 'DisplayAlerts' = 0.

CALL METHOD OF GS_WBOOKLIST 'Add' = GS_WBOOK .

GET PROPERTY OF GS_APPLICATION 'ActiveSheet' = GS_ACTIVESHEET .

SET PROPERTY OF GS_ACTIVESHEET 'Name' = GV_SHEET_NAME ."工作表命名

SET PROPERTY OF GS_EXCEL 'Visible' = 1."0 为后台运行,1为前台运行(打开EXCEL)。

DO 2 TIMES ."赋值

GV_LINNO = GV_LINNO + 1.

CALL METHOD OF GS_EXCEL 'Cells' = GS_CELL1

EXPORTING

#1 = GV_LINNO

#2 = 1.

CALL METHOD OF GS_EXCEL 'Cells' = GS_CELL2

EXPORTING

#1 = GV_LINNO

#2 = 1.

CALL METHOD OF GS_EXCEL 'Range' = GS_CELLS "是否合并

EXPORTING

#1 = GS_CELL1

#2 = GS_CELL2.

CALL METHOD OF GS_CELLS 'Merge' .

* CALL METHOD OF GS_CELLS 'SELECT'.

SET PROPERTY OF GS_CELL1 'Value' = GV_LINNO."赋值

ENDDO.

WAIT UP TO '0.5' SECONDS.

GET PROPERTY OF GS_EXCEL 'ACTIVESHEET' = SHEET.

GET PROPERTY OF GS_EXCEL 'ACTIVEWORKBOOK' = GS_WBOOK.

*CALL METHOD OF GS_WBOOK 'SAVE'."AS' EXPORTING #1 = LV_SELECTED_FOLDER #2 = 1.

CALL METHOD OF GS_WBOOK 'SAVEAS' EXPORTING #1 = LV_SELECTED_FOLDER #2 = 1.

CALL METHOD OF GS_WBOOK 'CLOSE'.

CALL METHOD OF GS_EXCEL 'QUIT'.

FREE: GS_EXCEL,GS_WBOOKLIST,GS_APPLICATION,GS_WBOOK,GS_ACTIVESHEET,GS_CELL1,GS_CELL2,GS_CELLS,SHEET.

相关推荐
yanweijie03172 小时前
Excel-vlookup -多条件匹配,返回指定列处的值
excel
Channing Lewis3 小时前
sql server如何创建表导入excel的数据
数据库·oracle·excel
沉到海底去吧Go19 小时前
【工具教程】PDF电子发票提取明细导出Excel表格,OFD电子发票行程单提取保存表格,具体操作流程
pdf·excel
开开心心就好21 小时前
高效Excel合并拆分软件
开发语言·javascript·c#·ocr·排序算法·excel·最小二乘法
沉到海底去吧Go2 天前
【行驶证识别成表格】批量OCR行驶证识别与Excel自动化处理系统,行驶证扫描件和照片图片识别后保存为Excel表格,基于QT和华为ocr识别的实现教程
自动化·ocr·excel·行驶证识别·行驶证识别表格·批量行驶证读取表格
Abigail_chow3 天前
EXCEL如何快速批量给两字姓名中间加空格
windows·microsoft·excel·学习方法·政务
xiaohezi3 天前
Rag chunk 之:Excel 文档解析
excel
weixin_472339463 天前
python批量解析提取word内容到excel
python·word·excel
4 天前
Unity与Excel表格交互热更方案
unity·游戏引擎·excel
金融小白数据分析之路4 天前
Excel高级函数使用FILTER、UNIQUE、INDEX
excel