zoukankan      html  css  js  c++  java
  • Export excel file format

    1. Fomat 1.

      1 SysExcelStyle           style;
      2 ;
      3 
      4 ...
      5 // Set orientation
      6 style.comObject().orientation(90);
      7 // distribute text
      8 style.horizontalalignment(-4117);
      9 // center text
     10 style.horizontalalignment(-4108);
     11 // right align text
     12 style.horizontalalignment(-4152);
     13 // set indent level
     14 style.comObject().indentlevel(5);
     15 // wrap text
     16 style.comObject().wraptext(true);
     17 ...
     18 
     19 sheet.cells().range("A1:B1").comObject().merge(); //合并
     20 sheet.columns().autoFit();                             //自动宽度
     21 
     22 static void ExportToExcel(Args _args)
     23 {
     24     #AviFiles
     25     SysOperationProgress    progress = new SysOperationProgress();
     26     SysExcelApplication     sysExcelApplication;
     27     SysExcelWorkbooks       sysExcelWorkBooks;
     28     // Filename to which you will be writing your data
     29     FileName                fileName = "C:\\Windows\\Temp\\ExportToExcel.xlsx";
     30     SysExcelWorkbook        sysExcelWorkBook;
     31     SysExcelWorkSheets      sysExcelWorkSheets;
     32     SysExcelWorkSheet       sysExcelWorkSheet;
     33     SysExcelWorkSheet       sysExcelWorksheetBackOrder;
     34     SysExcelWorksheet       sysExcelWorkSheetToBeDeleted;
     35     SysExcelStyles          styles;
     36     SysExcelStyle           style;
     37     SysExcelFont            font;
     38     SysExcelCells           cells;
     39     int                     row = 1;
     40     int                     rowBackOrder;
     41     CustTable               custTable;
     42     SalesTable              salesTable;
     43     SalesLine               salesLine;
     44     boolean                 workSheetAdded = false;
     45     int                     nbrOfCustomers;
     46     ;
     47 
     48     // Initialising progress bar
     49     progress.setCaption("Export To Excel in progress...");
     50     progress.setAnimation(#AviTransfer);
     51     // Initialisation of some objects
     52     sysExcelApplication = SysExcelApplication::construct();
     53     // Create new workbook
     54     sysExcelWorkBooks = sysExcelApplication.workbooks();
     55     sysExcelWorkBook = sysExcelWorkBooks.add();
     56     // Create new style
     57     styles = sysExcelWorkBook.styles();
     58     style = styles.add("Header");
     59     // Set font for this style to bold and color to red
     60     font = style.font();
     61     font.bold(true);
     62     font.color(255);
     63     // Get worksheets collection
     64     sysExcelWorkSheets = sysExcelWorkbook.worksheets();
     65     // Excel visible on desktop running the job or not?
     66     sysExcelApplication.visible(false);
     67     // Newly created Excel files have by default some worksheets
     68     // Delete those worksheets created by default
     69     while(sysExcelWorkSheets.count() > 1)
     70     {
     71         sysExcelWorkSheetToBeDeleted = sysExcelWorkSheets.itemFromNum(2);
     72         sysExcelWorkSheetToBeDeleted.delete();
     73     }
     74     // Add as many worksheets as there are customers
     75     select count(RecId) from CustTable;
     76     sysExcelWorkSheet = sysExcelWorkSheets.add(null,null,CustTable.RecId);
     77     // Add another worksheet
     78     sysExcelWorkSheet = sysExcelWorkSheets.add();
     79     //Rename the first worksheet
     80     sysExcelWorkSheet.name("Customers");
     81     // Make a title row
     82     // set a value in cell on row 1 column 1
     83     sysExcelWorkSheet.cells().item(1,1).value("Customer account");
     84     // set a value in cell on row 1 column 2
     85     sysExcelWorksheet.cells().item(1,2).value("Name");
     86     // set the title row in the Header style
     87     sysExcelWorksheet.rows().item(1).style("Header");
     88     while select custTable
     89     {
     90         progress.setText(strfmt("Customer %1", custTable.Name));
     91         row++;
     92         rowBackOrder = 1;
     93         sysExcelWorksheet.cells().item(row,1).value(custTable.AccountNum);
     94         sysExcelWorksheet.cells().item(row,2).value(custTable.Name);
     95         while select salesLine
     96         where salesLine.SalesStatus             == salesStatus::Backorder
     97         && salesLine.ConfirmedDlv               < Today()
     98         && salesLine.RemainSalesPhysical        > 0
     99         join salesTable
    100         where salesTable.SalesId                == salesLine.SalesId &&
    101         salesTable.CustAccount                  == custTable.AccountNum
    102         {
    103             if(!workSheetAdded)
    104             {
    105                 // Use the next Excel worksheet and rename it
    106                 sysExcelWorksheetBackOrder = sysExcelWorkSheets.itemFromNum(
    107                     row);
    108                 //Name of worksheet can have maximum 31 characters
    109                 sysExcelWorksheetBackOrder.name(substr(custTable.Name,1,31));
    110                 workSheetAdded = true;
    111                 // Make a title row
    112                 // set a value in cell on row 1 column 1
    113                 sysExcelWorksheetBackOrder.cells().item(1,1).value(
    114                     "Ship Date");
    115                 // set a value in cell on row 1 column 2
    116                 sysExcelWorksheetBackOrder.cells().item(1,2).value(
    117                     "Item Number");
    118                 // set a value in cell on row 1 column 3
    119                 sysExcelWorksheetBackOrder.cells().item(1,3).value(
    120                     "Item Name");
    121                 // set a value in cell on row 1 column 4
    122                 sysExcelWorksheetBackOrder.cells().item(1,4).value(
    123                     "Deliver Remainder");
    124                 // set the title row in the Header style
    125                 sysExcelWorksheetBackOrder.rows().item(1).style("Header");
    126             }
    127             rowBackOrder++;
    128             sysExcelWorksheetBackOrder.cells().item(rowBackOrder,1).value(
    129                 salesLine.ConfirmedDlv);
    130             sysExcelWorksheetBackOrder.cells().item(rowBackOrder,2).value(
    131                 salesLine.ItemId);
    132             sysExcelWorksheetBackOrder.cells().item(rowBackOrder,3).value(
    133                 InventTable::find(salesLine.ItemId).ItemName);
    134             sysExcelWorksheetBackOrder.cells().item(rowBackOrder,4).value(
    135                 salesLine.RemainSalesPhysical);
    136         }
    137         // Set the column width to autofit
    138         sysExcelWorksheetBackOrder.columns().autoFit();
    139         // Format the 4th column as Number with 2 decimal places
    140         cells = sysExcelWorksheetBackOrder.cells();
    141         cells.range("D2:D99").numberFormat("0,00");
    142         workSheetAdded = false;
    143     }
    144     // Set the column width to autoFit
    145     sysExcelWorksheet.columns().autoFit();
    146     // Suppress the pop-up window:
    147     // A file named foo already exists in this location. Do you want to replace it?
    148     sysExcelApplication.displayAlerts(false);
    149     // Save the Excel file
    150     sysExcelWorkbook.saveAs(fileName);
    151     sysExcelWorkBook.comObject().save();
    152     sysExcelWorkBook.saved(true);
    153     // Make sure you close the Excel application
    154     // Especially if you run the job without showing Excel on the desktop
    155     // (sysExcelApplication.visible(false))
    156     sysExcelApplication.quit();
    157 
    158 }

    2. My example.

     1 public void wiiSetStyle_backup(str strFilePath)
     2 {
     3   SysExcelApplication excel;
     4   SysExcelWorkSheets sheets;
     5   SysExcelWorkSheet sheet;
     6   SysExcelRange sysExcelRange;
     7   SysExcelCells excelCells;
     8   SysExcelStyles styles;
     9   SysExcelStyle Style;
    10   str strSetIndex;
    11 
    12   ;
    13   excel = SysExcelApplication::construct();
    14   excel.workbooks().open(strFilePath);
    15   sheets = excel.worksheets();
    16   sheet = sheets.itemFromNum(1);
    17   excelCells = sheet.cells();
    18   styles = excel.workbooks().item(1).styles();
    19   style = styles.add("mystyles");
    20   style.font().bold(true);
    21   style.font().color(000100);
    22   style.font().comObject().Size(10);
    23   style.font().comObject().Name("Arial");
    24   sysExcelRange = sheet.range("A1:F1");
    25   sysExcelRange.style("mystyles");
    26   style = styles.add("mystyles1");
    27   style.font().bold(true);
    28   style.font().color(000100);
    29   style.font().comObject().Size(10);
    30   style.font().comObject().Name("Arial");
    31   sysExcelRange = sheet.range("G2:N2");
    32   sysExcelRange.style("mystyles1");
    33   style = styles.add("mystyles2");
    34   strSetIndex = "A3:N" + int2str(lastindex+2);
    35   style.font().comObject().Size(8);
    36   style.font().comObject().Name("Arial");
    37   sysExcelRange = sheet.range(strSetIndex);
    38   sysExcelRange.style("mystyles2");
    39   style = styles.add("mystyles3");
    40   strSetIndex = "A3:N" + int2str(lastindex+2);
    41   style.font().comObject().Size(8);
    42   style.font().comObject().Name("Arial");
    43   sysExcelRange = sheet.range(strSetIndex);
    44   sysExcelRange.style("mystyles3");
    45   excel.save();
    46   excel.workbooks().close();
    47   excel.quit();
    48 
    49 }
  • 相关阅读:
    二分练习题4 查找最接近的元素 题解
    二分练习题5 二分法求函数的零点 题解
    二分练习题3 查找小于x的最大元素 题解
    二分练习题2 查找大于等于x的最小元素 题解
    二分练习题1 查找元素 题解
    code forces 1176 D. Recover it!
    code forces 1173 B. Nauuo and Chess
    code forces 1173 C. Nauuo and Cards
    吴恩达深度学习课程笔记-15
    吴恩达深度学习课程笔记-14
  • 原文地址:https://www.cnblogs.com/Jinnchu/p/2659952.html
Copyright © 2011-2022 走看看