将多个工作表Excel上载到内部表

时间:2018-09-04 11:17:44

标签: excel sap abap

我有Excel文件,并且有多个工作表(多个工作表),因此我需要上传此工作表中的所有数据。此功能'TEXT_CONVERT_XLS_TO_SAP'不适用,因为仅上传活动工作表中的数据(仅上传一个工作表)。

3 个答案:

答案 0 :(得分:1)

我找到了这些。通常,此方法的工作方式是提供您到目前为止已尝试过的代码以及出现问题的代码。寻求解决方案不是您能从这里得到的,而是来自Google:

  1. https://archive.sap.com/discussions/thread/594226->报告中的示例编码
  2. https://archive.sap.com/discussions/thread/3191410->他们甚至提供了示例报告

答案 1 :(得分:0)

data: l_t_data   type w3mimetabtype,
      l_t_files  type filetable,
      l_rc       type i.

cl_gui_frontend_services=>file_open_dialog(
  exporting
    file_filter = '*.xlsx'
    default_filename = '*.xlsx'
  changing
    file_table = l_t_files
    rc = l_rc
).
check l_t_files[] is not initial.

cl_gui_frontend_services=>gui_upload(
  exporting
    filename = conv string( l_t_files[ 1 ]-filename )
    filetype = 'BIN'
  importing
    filelength = data(l_length)
  changing
    data_tab = l_t_data
).

try.
   data(l_r_xls) = new cl_fdt_xl_spreadsheet(
     document_name = conv string( l_t_files[ 1 ]-filename )
     xdocument = cl_fxs_converter=>w3mimetab_to_xstring( iv_w3mimetab = l_t_data iv_length = l_length )
   ).
catch cx_fdt_excel_core.
  assert 1 = 2.
endtry.

l_r_xls->if_fdt_doc_spreadsheet~get_worksheet_names( importing worksheet_names = data(l_t_worksheets) ).

答案 2 :(得分:-2)

您可以将所有数据放在一张纸中吗?

您始终可以创建一个宏左右,然后将工作表中的所有数据合并为一个,然后使用您评论的TEXT_CONVERT_XLS_TO_SAP。

祝你好运