abap将内表数据导出为excel文件

摘要:
一个好的计划:WHEN'EXPORT'“导出数据data:GT_TEMPTYPETABLEOFTY_ITEMWITHEADERLINE.LOOPATGT_IMERRINTOGT_TEMP.APPENDGT_TEMP.ENDLOP.INCLUDEOLEINCL.data:EXCELTYPEOLE2_OBJECT”excel对象SHEETYPEOLE2_ OB

一个不错的方案: 

WHEN 'EXPORT'.                "导出数据
  DATA : GT_TEMP TYPE TABLE OF TY_ITEM WITH HEADER LINE.
  LOOP AT GT_IMERR INTO GT_TEMP.   APPEND GT_TEMP. ENDLOOP.   INCLUDE OLE2INCL.   DATA : EXCEL TYPE OLE2_OBJECT, "excel对象        SHEET TYPE OLE2_OBJECT, "sheet工作簿页对象 CELL TYPE OLE2_OBJECT, "cell单元格对象 WORKBOOK TYPE OLE2_OBJECT, "workbook工作簿 XLSNAME TYPE STRING VALUE 'C:导入失败数据.xls', LINE TYPE I VALUE 0. "行号   CREATE OBJECT EXCEL 'EXCEL.APPLICATION'. "启动excel   IF SY-SUBRC NE 0.     WRITE : / 'excel启动失败...'.     STOP.   ENDIF.   CALL METHOD OF EXCEL 'WORKBOOKS' = WORKBOOK.   SET PROPERTY OF EXCEL 'VISIBLE' = 1.         "使excel可见   SET PROPERTY OF EXCEL 'SHEETSINNEWWORKBOOK' = 1. "如果是读取excel的内容,则直接打开excel的第一页   CALL METHOD OF WORKBOOK 'ADD'.           "例如:CALL METHOD OF EXCEL 'WORKSHEETS' = SHEET EXPORTING #1 = 1.   LINE = LINE + 1.   CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 1.  "指定单元格   SET PROPERTY OF CELL 'VALUE' = '客户编号'.   "写入值   CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 2.   SET PROPERTY OF CELL 'VALUE' = '客户名称'.   CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 3.   SET PROPERTY OF CELL 'VALUE' = '销售组织'.   CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 4.   SET PROPERTY OF CELL 'VALUE' = '产品大类'.   CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 5.   SET PROPERTY OF CELL 'VALUE' = '物料组'.   CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 6.   SET PROPERTY OF CELL 'VALUE' = '省区'.   CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 7.   SET PROPERTY OF CELL 'VALUE' = '城市'.   CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 8.   SET PROPERTY OF CELL 'VALUE' = '交货工厂'.   CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 9.   SET PROPERTY OF CELL 'VALUE' = '库存地点'.   CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 10.   SET PROPERTY OF CELL 'VALUE' = '价格清单'.   LOOP AT GT_IMERR INTO GS_ITEM.     LINE = LINE + 1. "excel中行号从1开始     CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 1. "指定单元格     SET PROPERTY OF CELL 'VALUE' = GS_ITEM-KUNNR.            "写入值     CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 2.     SET PROPERTY OF CELL 'VALUE' = GS_ITEM-NAME1.     CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 3.     SET PROPERTY OF CELL 'VALUE' = GS_ITEM-VKORG.     CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 4.     SET PROPERTY OF CELL 'VALUE' = GS_ITEM-AUGRU.     CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 5.     SET PROPERTY OF CELL 'VALUE' = GS_ITEM-MATKL.     CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 6.     SET PROPERTY OF CELL 'VALUE' = GS_ITEM-ZXSHF.     CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 7.     SET PROPERTY OF CELL 'VALUE' = GS_ITEM-ZXSZS.     CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 8.     SET PROPERTY OF CELL 'VALUE' = GS_ITEM-WERKS.     CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 9.     SET PROPERTY OF CELL 'VALUE' = GS_ITEM-LGORT.     CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = LINE #2 = 10.     SET PROPERTY OF CELL 'VALUE' = GS_ITEM-PLTYP.   ENDLOOP.   GET PROPERTY OF EXCEL 'ACTIVESHEET' = SHEET.    "激活工作簿   GET PROPERTY OF EXCEL 'ACTIVEWORKBOOK' = WORKBOOK. "激活工作区   CALL METHOD OF WORKBOOK 'SAVEAS' EXPORTING #1 = XLSNAME #2 = 1. "将excel文件保存 *  CALL METHOD OF WORKBOOK 'CLOSE'.                 "关闭工作区 *  CALL METHOD OF EXCEL 'QUIT'.                    "退出excel   WRITE : / XLSNAME, 'DONE'.        "退出成功,输出done   FREE OBJECT SHEET.            "释放操作   FREE OBJECT WORKBOOK.   FREE OBJECT EXCEL. ENDCASE.

免责声明:内容来源于网络,仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇分享我们项目中基于EF事务机制的架构数据库连接池的理解和使用下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

mssql sqlserver 使用脚本输出excel文件的方法分享

转自:http://www.maomao365.com/?p=6683 摘要: 下文将分享使用sql脚本输出excel的方法 此脚本可以应用于 表或视图生成excel的方法,若需使用sql脚本输出excel数据,我们可将sql脚本生成视图或临时表,然后再输出excel------------------------------------输出excel...

.net 操作 excel

1. 读取      读取好像有几种方式,通过ADO.net, 通过Microsoft.Interop.Excel支持类库用调用COM读取,还有通过ZIP解压最终读取DOM(这个貌似蛮复杂)这里我用的ADO.NET只介绍这一个。 读Excel到Tablepublic DataTable ExcelToDataTable(string strExcelPa...

ABAP-供应商主数据创建(公司视图)

FUNCTION zmm_fm_21_04.*"----------------------------------------------------------------------*"*"本地接口:*"  IMPORTING*"     VALUE(IN) TYPE  ZSLIFNR_SRM*"  EXPORTING*"     VALUE(OUT...

C/C++读写excel文件 的几种方式

因为有些朋友问代码的问题,将OLE读写的代码分享在这个地方,大家请自己看。http://blog.csdn.net/fullsail/article/details/8449448 C++读取Excel的XLS文件的方法有很多,但是也许就是因为方法太多,大家在选择的时候会很疑惑。由于前两天要做导表工具,比较了常用的方法,总结一下写个短文, 1.OL...

ABAP锁、数据库锁

ABAP数据锁定... 338 SM12锁查看与维护... 344 通用加锁与解锁函数... 344 ABAP程序锁定... 345 数据库锁... 347 锁的分类和兼容性... 347 并发性与锁的权衡... 348 数据库的事务隔离级别... 348 在JDBC应用程序中设置隔离级别... 349 在应用程序中采用悲观锁和乐观锁... 349 由数...

将SqlServer的数据导出到Excel/csv中的各种方法 .

以下都只是介绍操作的原理,具体要求要在应用中具体分析改变。 如果大家有其他好的方法,请相互告知,共同学习。 1.       此方法常用在form或者Console Application中,使用时须用要添加Reference,具体做法:           右键点击项目添加“Add Reference”,在com组件下,选择“Microsoft Exc...