乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > ABAP如何查询读取内表到另一个内表-abap导入excel,excel怎么导入数据

ABAP如何查询读取内表到另一个内表-abap导入excel,excel怎么导入数据

作者:乔山办公网日期:

返回目录:excel表格制作


写了一个简e68a84e79fa5e98193330单的例子,显示为排版。以下内容为程序代码:DATA: itab LIKE STANDARD TABLE OF alsmex_tabline, wtab LIKE alsmex_tabline.PARAMETERS fname LIKE rlgrap-filename MEMORY ID m01.AT SELECTION-SCREEN ON VALUE-REQUEST FOR fname. CALL FUNCTION 'KD_GET_FILENAME_ON_F4' EXPORTING mask = '*.xls' static = 'X' CHANGING file_name = fname.START-OF-SELECTION. CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE' EXPORTING filename = fname i_begin_col = 1 i_begin_row = 1 i_end_col = 10 i_end_row = 10 TABLES intern = itab EXCEPTIONS inconsistent_parameters = 1 upload_ole = 2 OTHERS = 3. SORT itab BY row col. LOOP AT itab INTO wtab. AT NEW row. WRITE: space, /. ENDAT. WRITE: wtab-value. ENDLOOP.

有5种办法把内表A中的信息拿到B表中
1.循环拷贝
LOOP AT A.
B-... = A-...
B-... = A-...
APPEND B.
ENDLOOP.

2.根据条件(非B表中的条件)读取A中的行信息到B中
READ A WITH KEY C = ... .
B-... = A-...
APPEND B.

3.根据B中的条件读取A中的行信息到B中
LOOP AT B.
READ A WITH KEY C = B-...
B-... = A-...
MODIFY B.
ENDLOOP.

4.直接拷贝
APPEND LINES OF A TO B.

5.直接给内表赋值
B[] = A[].
REPORT YTEST015 .*定义读入7a686964616fe4b893e5b19e363EXCEL的内表DATA:BEGIN OF IEXCEL OCCURS 0. INCLUDE STRUCTURE ALSMEX_TABLINE.DATA:END OF IEXCEL.*输入文件名参数PARAMETERS: FN1 LIKE RLGRAP-FILENAME MEMORY ID M01.*从已知文件名读入内表CALL FUNCTION ’ALSM_EXCEL_TO_INTERNAL_TABLE’ EXPORTINGFILENAME = FN1I_BEGIN_COL = 1I_BEGIN_ROW = 1I_END_COL = 100 " 最大列数据I_END_ROW = 1000 "最大行数TABLESINTERN = IEXCEL EXCEPTIONSINCONSISTENT_PARAMETERS = 1UPLOAD_OLE = 2OTHERS = 3. IF SY-SUBRC 0. WRITE:/ ’读入文件错误!’,fn1. ELSE.*循环读取内表并打印LOOP AT IEXCEL.WRITE IEXCEL-VALUE(2).AT END OF ROW.WRITE:/ .ENDAT.ENDLOOP.ENDIF.

读取EXCEL数据到内表并输出调用函e79fa5e98193e4b893e5b19e339数: ALSM_EXCEL_TO_INTERNAL_TABLE *&---------------------------------------------------------------------**& Report ZCMH0009*&*&---------------------------------------------------------------------**& 读取EXCEL 的数据 到内表*&*&---------------------------------------------------------------------*REPORT ZCMH0009.INCLUDE OLE2INCL. "定义OLE变量DATA: BEGIN OF IEXCEL OCCURS 0. INCLUDE STRUCTURE ALSMEX_TABLINE.DATA: END OF IEXCEL.DATA: XLS LIKE RLGRAP-FILENAME VALUE 'C:\sap_usr02.xls'.CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE' EXPORTING FILENAME = XLS
I_BEGIN_COL = 1 I_BEGIN_ROW = 1 I_END_COL = 100 " 读取多少列 I_END_ROW = 100 "读取多少行 TABLES INTERN = IEXCEL
EXCEPTIONS INCONSISTENT_PARAMETERS = 1 UPLOAD_OLE = 2 OTHERS = 3."读取后内表保存的结构为:第一行记录第一个单元的行值 列值 单元格内容 比如 0001 0001 第一个单元格内容WRITE: /.IF sy-subrc <> 0. WRITE: / XLS,'读入错误!'.ELSE. LOOP AT IEXCEL. WRITE IEXCEL-VALUE(20). "取前20个字符 AT END OF ROW. "每行行尾输出空行 WRITE : /. ENDAT. ENDLOOP.ENDIF.

相关阅读