2007年7月19日 星期四

如何使用Java與Delphi控制Microsoft Excel之object

如何使用JavaDelphi控制Microsoft Excelobject


讀取Excel: Java
































項目



控制內容



Syntax



1



使用之外部API



jxl.*



2



讀取xls檔案



Workbook workBook = Workbook.getWorkbook(new File("c:/Abnormal_Code.xls"));



3



讀取第一個工作表



Sheet sheet = workBook.getSheet(0);



4



取得指定工作表之Column數量



sheet.getColumns()



5



取得指定工作表之Row數量



sheet.getRows()



6



取得指定Cell之內容



sheet.getCell(column, row).getContents()




讀取Excel: Delphi
































項目



控制內容



Syntax



1



使用之外部API



ComObj



2



讀取xls檔案



Var


excel_sheet: Variant;



excel_sheet := CreateOleOBject('Excel.Application');


excel_sheet.Workbooks.Open('c:\200511615141.xls');



3



讀取第一個工作表



excel_sheet.WorkBooks[1].WorkSheets[1]



4



取得指定工作表之Column數量





5



取得指定工作表之Row數量





6



取得指定Cell之內容



excel_sheet.WorkBooks[1].WorkSheets[3].Cells[1,1]




寫入Excel: Java
























































項目



控制內容



Syntax



1



建立一個空的Excel檔案



WritableWorkbook writableWorkBook = Workbook.createWorkbook(new File("c:/Abnormal_Code_Ouput.xls"));



2



建立第一個工作表,並命名為Data



WritableSheet writableSheet = writableWorkBook.createSheet("Data", 1);



3



建立Cell之格式



WritableCellFormat writableCellFormat = new WritableCellFormat();



4



設定文字置中



//文字置中


writableCellFormat.setAlignment(jxl.format.Alignment.CENTRE);



5



設定Cell之背景顏色



writableCellFormat.setBackground(jxl.format.Colour.GRAY_25);



6



設定Cell之邊框



writableCellFormat.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN);



7



建立一個Cell,並使用上述所建立之格式



Label label = new Label(column, row, "Test", writableCellFormat);


writableSheet.addCell(label);//加入工作表中



8



設定Cell寬度



writableSheet.setColumnView(column, cellWidth);


ex: writableSheet.setColumnView(0, 5);



9



設定Cell高度



writableSheet.setRowView(row, cellHeight);


ex: writableSheet.setRowView(0, 10);



10



設定整個Cell之格式



writableCell.setCellFormat(writableCellFormat);



11



合併儲存格



ritableSheet.mergeCells(start_column, start_row, end_column, end_row)


writableSheet.mergeCells(2, 0, 3, 0);



12



將建立之物件寫入Excel工作簿中,並關閉



writableWorkBook.write();


writableWorkBook.close();




寫入Excel: Delphi












































項目



控制內容



Syntax



1



建立一個空的Excel檔案



excel := CreateOleOBject('Excel.Application'); excel.Workbooks.Open(targetFileName);



2



建立第一個工作表,並命名為Data



excel.Workbooks[1].Worksheets.Add;


excel.Workbooks[1].sheets[1].Name := 'Data';



3



設定Cell之背景顏色



excel.Cells[1,1].Interior.ColorIndex := 6;



4



設定Cell之邊框



excel.ActiveSheet.Range['A1:B2'].Borders[n].Weight := 3;


n1- 2- 3- 4- 5-( \ ) 6-( / )



excel.WorkBooks[1].WorkSheets[1].Cells[1, 1].Borders[6].LineStyle:= 0;



5



設定Cell寬度



excel.ActiveSheet.Columns[1].ColumnsWidth := 5;(單位:字元個數)



6



設定Cell高度



excel.ActiveSheet.Rows[2].RowHeight := 1/0.035;(單位:磅)(10.035厘米)



7



設定整個Cell之格式



excel.Cells[1, 1].RowHeight := 20;



8



合併儲存格



excel.Range['A1','D1'].Merge(True);



9



將建立之物件寫入Excel工作簿中,並關閉



excel.WorkBooks[1].Save;


excel.WorkBooks.Close;


excel.Quit;



沒有留言: