<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Upload data from an Excel Workbook in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/upload-data-from-an-excel-workbook/m-p/1664332#M294221</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Try below code...&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Report ZNEGI9 *&lt;/P&gt;&lt;P&gt;*&amp;amp; *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; *&lt;/P&gt;&lt;P&gt;*&amp;amp; *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT ZNEGI9 NO STANDARD PAGE HEADING.&lt;/P&gt;&lt;P&gt;INCLUDE ole2incl .&lt;/P&gt;&lt;P&gt;DATA: gs_excel TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_wbooklist TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_application TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_wbook TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_activesheet TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_sheets TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_newsheet TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_cell1 TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_cell2 TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_cells TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_range TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_font TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_interior TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_columns TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_charts TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_chart TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_charttitle TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_charttitlechar TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_chartobjects TYPE ole2_object .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA gv_sheet_name(20) TYPE c .&lt;/P&gt;&lt;P&gt;DATA gv_outer_index LIKE sy-index .&lt;/P&gt;&lt;P&gt;DATA gv_intex(2) TYPE c .&lt;/P&gt;&lt;P&gt;DATA gv_line_cntr TYPE i . "line counter&lt;/P&gt;&lt;P&gt;DATA gv_linno TYPE i . "line number&lt;/P&gt;&lt;P&gt;DATA gv_colno TYPE i . "column number&lt;/P&gt;&lt;P&gt;DATA gv_value TYPE i . "data&lt;/P&gt;&lt;P&gt;PARAMETERS: p_sheets TYPE i .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION .&lt;/P&gt;&lt;P&gt;DO p_sheets TIMES .&lt;/P&gt;&lt;P&gt;*--Forming sheet name&lt;/P&gt;&lt;P&gt;gv_intex = sy-index .&lt;/P&gt;&lt;P&gt;gv_outer_index = sy-index .&lt;/P&gt;&lt;P&gt;CONCATENATE 'Excel Sheet #' gv_intex INTO gv_sheet_name .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--For the first loop, Excel is initiated and one new sheet is added&lt;/P&gt;&lt;P&gt;IF sy-index = 1 .&lt;/P&gt;&lt;P&gt;CREATE OBJECT gs_excel 'EXCEL.APPLICATION' .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_excel 'Visible' = 1 .&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_excel 'Workbooks' = gs_wbooklist .&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_wbooklist 'Application' = gs_application .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_application 'SheetsInNewWorkbook' = 1 .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_wbooklist 'Add' = gs_wbook .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_application 'ActiveSheet' = gs_activesheet .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_activesheet 'Name' = gv_sheet_name .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--For the rest of loops, other sheets are added&lt;/P&gt;&lt;P&gt;ELSE .&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_wbook 'Sheets' = gs_sheets .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_sheets 'Add' = gs_newsheet .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_newsheet 'Name' = gv_sheet_name .&lt;/P&gt;&lt;P&gt;ENDIF .&lt;/P&gt;&lt;P&gt;gv_line_cntr = 1 . "line counter&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Title&lt;/P&gt;&lt;P&gt;*--Selecting cell area to be merged.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = 1&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell2&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = 1&lt;/P&gt;&lt;P&gt;#2 = 4.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Range' = gs_cells&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gs_cell1&lt;/P&gt;&lt;P&gt;#2 = gs_cell2.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_cells 'Select' .&lt;/P&gt;&lt;P&gt;*--Merging&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_cells 'Merge' .&lt;/P&gt;&lt;P&gt;*--Setting title data&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'Value' = 'KISHAN' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Formatting the title&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_cell1 'Font' = gs_font .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_font 'Underline' = 2 .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_font 'Bold' = 1 .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'HorizontalAlignment' = -4108 .&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_cell1 'Interior' = gs_interior .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_interior 'ColorIndex' = 15 .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_interior 'Pattern' = -4124 .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_interior 'PatternColorIndex' = -4105 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;gv_line_cntr = gv_line_cntr + 1 .&lt;/P&gt;&lt;P&gt;*--Writing some additional data for the title&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'Value' = 'Sheet No' .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 5.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'Value' = ':' .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 6.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'Value' = gv_intex .&lt;/P&gt;&lt;P&gt;*--Formatting the area of additional data 1&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = 1&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell2&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 5.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Range' = gs_cells&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gs_cell1&lt;/P&gt;&lt;P&gt;#2 = gs_cell2.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_cells 'Select' .&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_cells 'Font' = gs_font .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_font 'Bold' = 1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Formatting the area of additional data 2&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = 1&lt;/P&gt;&lt;P&gt;#2 = 5.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell2&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 5.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Range' = gs_cells&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gs_cell1&lt;/P&gt;&lt;P&gt;#2 = gs_cell2.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_cells 'Select' .&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_cells 'Columns' = gs_columns .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_columns 'AutoFit' .&lt;/P&gt;&lt;P&gt;*--Bordering title data area&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = 1&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell2&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 6.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Range' = gs_cells&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gs_cell1&lt;/P&gt;&lt;P&gt;#2 = gs_cell2.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_cells 'Select' .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_cells 'BorderAround'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = 1 "continuous line&lt;/P&gt;&lt;P&gt;#2 = 4. "thick&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Putting axis labels&lt;/P&gt;&lt;P&gt;gv_colno = 2 .&lt;/P&gt;&lt;P&gt;gv_line_cntr = gv_line_cntr + 5 .&lt;/P&gt;&lt;P&gt;gv_linno = gv_line_cntr - 1 .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_linno&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'Value' = 'X' .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'Value' = 'Y' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Generating some data&lt;/P&gt;&lt;P&gt;DO 3 TIMES .&lt;/P&gt;&lt;P&gt;gv_value = gv_outer_index * sy-index * 10 .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_linno&lt;/P&gt;&lt;P&gt;#2 = gv_colno.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'Value' = sy-index .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = gv_colno.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'Value' = gv_value .&lt;/P&gt;&lt;P&gt;gv_colno = gv_colno + 1 .&lt;/P&gt;&lt;P&gt;ENDDO .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Source data area&lt;/P&gt;&lt;P&gt;gv_colno = gv_colno - 1 .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING #1 = gv_linno&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell2&lt;/P&gt;&lt;P&gt;EXPORTING #1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = gv_colno.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Range' = gs_cells&lt;/P&gt;&lt;P&gt;EXPORTING #1 = gs_cell1&lt;/P&gt;&lt;P&gt;#2 = gs_cell2.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_cells 'Select' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_application 'Charts' = gs_charts .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_charts 'Add' = gs_chart .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_chart 'Activate' .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_chart 'ChartType' = '51' . "Vertical bar graph&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_chart 'SetSourceData'&lt;/P&gt;&lt;P&gt;EXPORTING #1 = gs_cells&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_chart 'HasTitle' = 1 .&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_chart 'ChartTitle' = gs_charttitle .&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_charttitle 'Characters' = gs_charttitlechar .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_charttitlechar 'Text' = 'Sample Graph' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Locate the chart onto the current worksheet&lt;/P&gt;&lt;P&gt;*--Activate current sheet&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'WorkSheets' = gs_activesheet&lt;/P&gt;&lt;P&gt;EXPORTING #1 = gv_sheet_name.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_activesheet 'Activate' .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_chart 'Location'&lt;/P&gt;&lt;P&gt;EXPORTING #1 = 2&lt;/P&gt;&lt;P&gt;#2 = gv_sheet_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Reposition the chart on the worksheet (cut&amp;amp;paste)&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_activesheet 'ChartObjects' = gs_chartobjects .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_chartobjects 'Select' .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_chartobjects 'Cut' .&lt;/P&gt;&lt;P&gt;*--Select new area&lt;/P&gt;&lt;P&gt;gv_line_cntr = gv_line_cntr + 2 .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell2&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Range' = gs_cells&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gs_cell1&lt;/P&gt;&lt;P&gt;#2 = gs_cell2.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_cells 'Select' .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_activesheet 'Paste' .&lt;/P&gt;&lt;P&gt;enddo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Deallocating memory&lt;/P&gt;&lt;P&gt;FREE: gs_excel, gs_wbooklist, gs_application, gs_wbook,&lt;/P&gt;&lt;P&gt;gs_activesheet,gs_sheets, gs_newsheet, gs_cell1,&lt;/P&gt;&lt;P&gt;gs_cell2, gs_cells, gs_range, gs_font, gs_interior,&lt;/P&gt;&lt;P&gt;gs_columns, gs_charts, gs_chart, gs_charttitle,&lt;/P&gt;&lt;P&gt;gs_charttitlechar, gs_chartobjects .&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 16 Nov 2006 11:11:12 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-11-16T11:11:12Z</dc:date>
    <item>
      <title>Upload data from an Excel Workbook</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/upload-data-from-an-excel-workbook/m-p/1664331#M294220</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Guys,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've an Excel workbook with multiple sheets. I need to upload the data from all these sheets into SAP. I've read quite a number of posts but was unable to  perform the task.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could you please provide me with some working code &amp;amp; documentation?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Nov 2006 11:09:57 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/upload-data-from-an-excel-workbook/m-p/1664331#M294220</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-11-16T11:09:57Z</dc:date>
    </item>
    <item>
      <title>Re: Upload data from an Excel Workbook</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/upload-data-from-an-excel-workbook/m-p/1664332#M294221</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Try below code...&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Report ZNEGI9 *&lt;/P&gt;&lt;P&gt;*&amp;amp; *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; *&lt;/P&gt;&lt;P&gt;*&amp;amp; *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT ZNEGI9 NO STANDARD PAGE HEADING.&lt;/P&gt;&lt;P&gt;INCLUDE ole2incl .&lt;/P&gt;&lt;P&gt;DATA: gs_excel TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_wbooklist TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_application TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_wbook TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_activesheet TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_sheets TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_newsheet TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_cell1 TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_cell2 TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_cells TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_range TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_font TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_interior TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_columns TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_charts TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_chart TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_charttitle TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_charttitlechar TYPE ole2_object ,&lt;/P&gt;&lt;P&gt;gs_chartobjects TYPE ole2_object .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA gv_sheet_name(20) TYPE c .&lt;/P&gt;&lt;P&gt;DATA gv_outer_index LIKE sy-index .&lt;/P&gt;&lt;P&gt;DATA gv_intex(2) TYPE c .&lt;/P&gt;&lt;P&gt;DATA gv_line_cntr TYPE i . "line counter&lt;/P&gt;&lt;P&gt;DATA gv_linno TYPE i . "line number&lt;/P&gt;&lt;P&gt;DATA gv_colno TYPE i . "column number&lt;/P&gt;&lt;P&gt;DATA gv_value TYPE i . "data&lt;/P&gt;&lt;P&gt;PARAMETERS: p_sheets TYPE i .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION .&lt;/P&gt;&lt;P&gt;DO p_sheets TIMES .&lt;/P&gt;&lt;P&gt;*--Forming sheet name&lt;/P&gt;&lt;P&gt;gv_intex = sy-index .&lt;/P&gt;&lt;P&gt;gv_outer_index = sy-index .&lt;/P&gt;&lt;P&gt;CONCATENATE 'Excel Sheet #' gv_intex INTO gv_sheet_name .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--For the first loop, Excel is initiated and one new sheet is added&lt;/P&gt;&lt;P&gt;IF sy-index = 1 .&lt;/P&gt;&lt;P&gt;CREATE OBJECT gs_excel 'EXCEL.APPLICATION' .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_excel 'Visible' = 1 .&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_excel 'Workbooks' = gs_wbooklist .&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_wbooklist 'Application' = gs_application .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_application 'SheetsInNewWorkbook' = 1 .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_wbooklist 'Add' = gs_wbook .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_application 'ActiveSheet' = gs_activesheet .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_activesheet 'Name' = gv_sheet_name .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--For the rest of loops, other sheets are added&lt;/P&gt;&lt;P&gt;ELSE .&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_wbook 'Sheets' = gs_sheets .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_sheets 'Add' = gs_newsheet .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_newsheet 'Name' = gv_sheet_name .&lt;/P&gt;&lt;P&gt;ENDIF .&lt;/P&gt;&lt;P&gt;gv_line_cntr = 1 . "line counter&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Title&lt;/P&gt;&lt;P&gt;*--Selecting cell area to be merged.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = 1&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell2&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = 1&lt;/P&gt;&lt;P&gt;#2 = 4.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Range' = gs_cells&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gs_cell1&lt;/P&gt;&lt;P&gt;#2 = gs_cell2.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_cells 'Select' .&lt;/P&gt;&lt;P&gt;*--Merging&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_cells 'Merge' .&lt;/P&gt;&lt;P&gt;*--Setting title data&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'Value' = 'KISHAN' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Formatting the title&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_cell1 'Font' = gs_font .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_font 'Underline' = 2 .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_font 'Bold' = 1 .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'HorizontalAlignment' = -4108 .&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_cell1 'Interior' = gs_interior .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_interior 'ColorIndex' = 15 .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_interior 'Pattern' = -4124 .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_interior 'PatternColorIndex' = -4105 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;gv_line_cntr = gv_line_cntr + 1 .&lt;/P&gt;&lt;P&gt;*--Writing some additional data for the title&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'Value' = 'Sheet No' .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 5.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'Value' = ':' .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 6.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'Value' = gv_intex .&lt;/P&gt;&lt;P&gt;*--Formatting the area of additional data 1&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = 1&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell2&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 5.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Range' = gs_cells&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gs_cell1&lt;/P&gt;&lt;P&gt;#2 = gs_cell2.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_cells 'Select' .&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_cells 'Font' = gs_font .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_font 'Bold' = 1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Formatting the area of additional data 2&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = 1&lt;/P&gt;&lt;P&gt;#2 = 5.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell2&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 5.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Range' = gs_cells&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gs_cell1&lt;/P&gt;&lt;P&gt;#2 = gs_cell2.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_cells 'Select' .&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_cells 'Columns' = gs_columns .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_columns 'AutoFit' .&lt;/P&gt;&lt;P&gt;*--Bordering title data area&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = 1&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell2&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 6.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Range' = gs_cells&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gs_cell1&lt;/P&gt;&lt;P&gt;#2 = gs_cell2.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_cells 'Select' .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_cells 'BorderAround'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = 1 "continuous line&lt;/P&gt;&lt;P&gt;#2 = 4. "thick&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Putting axis labels&lt;/P&gt;&lt;P&gt;gv_colno = 2 .&lt;/P&gt;&lt;P&gt;gv_line_cntr = gv_line_cntr + 5 .&lt;/P&gt;&lt;P&gt;gv_linno = gv_line_cntr - 1 .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_linno&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'Value' = 'X' .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'Value' = 'Y' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Generating some data&lt;/P&gt;&lt;P&gt;DO 3 TIMES .&lt;/P&gt;&lt;P&gt;gv_value = gv_outer_index * sy-index * 10 .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_linno&lt;/P&gt;&lt;P&gt;#2 = gv_colno.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'Value' = sy-index .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = gv_colno.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_cell1 'Value' = gv_value .&lt;/P&gt;&lt;P&gt;gv_colno = gv_colno + 1 .&lt;/P&gt;&lt;P&gt;ENDDO .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Source data area&lt;/P&gt;&lt;P&gt;gv_colno = gv_colno - 1 .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING #1 = gv_linno&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell2&lt;/P&gt;&lt;P&gt;EXPORTING #1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = gv_colno.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Range' = gs_cells&lt;/P&gt;&lt;P&gt;EXPORTING #1 = gs_cell1&lt;/P&gt;&lt;P&gt;#2 = gs_cell2.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_cells 'Select' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_application 'Charts' = gs_charts .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_charts 'Add' = gs_chart .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_chart 'Activate' .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_chart 'ChartType' = '51' . "Vertical bar graph&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_chart 'SetSourceData'&lt;/P&gt;&lt;P&gt;EXPORTING #1 = gs_cells&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_chart 'HasTitle' = 1 .&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_chart 'ChartTitle' = gs_charttitle .&lt;/P&gt;&lt;P&gt;GET PROPERTY OF gs_charttitle 'Characters' = gs_charttitlechar .&lt;/P&gt;&lt;P&gt;SET PROPERTY OF gs_charttitlechar 'Text' = 'Sample Graph' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Locate the chart onto the current worksheet&lt;/P&gt;&lt;P&gt;*--Activate current sheet&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'WorkSheets' = gs_activesheet&lt;/P&gt;&lt;P&gt;EXPORTING #1 = gv_sheet_name.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_activesheet 'Activate' .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_chart 'Location'&lt;/P&gt;&lt;P&gt;EXPORTING #1 = 2&lt;/P&gt;&lt;P&gt;#2 = gv_sheet_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Reposition the chart on the worksheet (cut&amp;amp;paste)&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_activesheet 'ChartObjects' = gs_chartobjects .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_chartobjects 'Select' .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_chartobjects 'Cut' .&lt;/P&gt;&lt;P&gt;*--Select new area&lt;/P&gt;&lt;P&gt;gv_line_cntr = gv_line_cntr + 2 .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell1&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Cells' = gs_cell2&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gv_line_cntr&lt;/P&gt;&lt;P&gt;#2 = 1.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_excel 'Range' = gs_cells&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;#1 = gs_cell1&lt;/P&gt;&lt;P&gt;#2 = gs_cell2.&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_cells 'Select' .&lt;/P&gt;&lt;P&gt;CALL METHOD OF gs_activesheet 'Paste' .&lt;/P&gt;&lt;P&gt;enddo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--Deallocating memory&lt;/P&gt;&lt;P&gt;FREE: gs_excel, gs_wbooklist, gs_application, gs_wbook,&lt;/P&gt;&lt;P&gt;gs_activesheet,gs_sheets, gs_newsheet, gs_cell1,&lt;/P&gt;&lt;P&gt;gs_cell2, gs_cells, gs_range, gs_font, gs_interior,&lt;/P&gt;&lt;P&gt;gs_columns, gs_charts, gs_chart, gs_charttitle,&lt;/P&gt;&lt;P&gt;gs_charttitlechar, gs_chartobjects .&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Nov 2006 11:11:12 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/upload-data-from-an-excel-workbook/m-p/1664332#M294221</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-11-16T11:11:12Z</dc:date>
    </item>
  </channel>
</rss>

