++

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

转载] Microsoft.Office.Interop.Excel 讀 / 寫 Excel 語法概全

Windows技术 2009-11-17 21:19:15 阅读249 评论1 字号:

Excel是相當好用的”傢絲”大部份的電腦都會安裝,用它來展現報表是相當方便;若是對方的電腦沒有安裝EXCEL,你想寫免安裝軟體,那也沒有關係,只要將你自己電腦中的EXCEL.EXE放進專案資料夾,再引用它。

第一步:加入EXCEL.EXE當參考,如同我所說的,你可以引用專案資料夾中的EXCEL.EXE,引用完後你就可以在方案總管看到Excel。

[C .Net] Microsoft.Office.Interop.Excel 讀 / 寫 Excel 語法概全 - blackboy51 - blackboy51的博客

[C .Net] Microsoft.Office.Interop.Excel 讀 / 寫 Excel 語法概全 - blackboy51 - blackboy51的博客

在物件瀏覽器中也可以見到Microsoft.Office.Interop.Excel

[C .Net] Microsoft.Office.Interop.Excel 讀 / 寫 Excel 語法概全 - blackboy51 - blackboy51的博客

或者可以直接加入參考,兩種方法選一種來用

[C .Net] Microsoft.Office.Interop.Excel 讀 / 寫 Excel 語法概全 - blackboy51 - blackboy51的博客

第二步:引用Microsoft.Office.Interop.Excel命名空間

using Microsoft.Office.Interop.Excel; 

第三步:引用Excel類別

//引用Excel Application類別_Application myExcel = null; //引用活頁簿類別 _Workbook myBook = null;//引用工作表類別_Worksheet mySheet = null;//引用Range類別 Range myRange = null;

第四步:建立一個新的Excel

//開啟一個新的應用程式myExcel = new Microsoft.Office.Interop.Excel.Application();

第五步:快樂的使用Excel

//加入新的活頁簿
myExcel.Workbooks.Add(true);
//停用警告訊息
myExcel.DisplayAlerts = false;
//讓Excel文件可見
myExcel.Visible = true;
//引用第一個活頁簿
myBook = myExcel.Workbooks[1];
//設定活頁簿焦點
myBook.Activate();
//引用第一個工作表
mySheet = (_Worksheet)myBook.Worksheets[1];
//命名工作表的名稱為 "Array"
mySheet.Name = "Cells";
//設工作表焦點
mySheet.Activate();
//用offset寫入陣列資料
myRange = mySheet.get_Range("A2", Type.Missing);
myRange.get_Offset(i, j).Select();
myRange.Value2 = "'" + myData[i, j];
 //用Cells寫入陣列資料
myRange.get_Range(myExcel.Cells[2 + i, 1 + j], myExcel.Cells[2 + i, 1 + j]).Select();
myExcel.Cells[2 + i, 1 + j] = "'" + myData[i, j];
 //加入新的工作表在第1張工作表之後
myBook.Sheets.Add(Type.Missing, myBook.Worksheets[1], 1, Type.Missing);
//引用第2個工作表
mySheet = (_Worksheet)myBook.Worksheets[2];
//命名工作表的名稱為 "Array"
mySheet.Name = "Array";

//加入新的工作表在第1張工作表之後
myBook.Sheets.Add(Type.Missing, myBook.Worksheets[1], 1, Type.Missing);
//引用第2個工作表
mySheet = (_Worksheet)myBook.Worksheets[2];
//命名工作表的名稱為 "Array"
mySheet.Name = "Array";
//寫入報表名稱
myExcel.Cells[1, 4] = "普通報表";
//設定範圍
myRange=(Range)mySheet.get_Range(myExcel.Cells[2, 1], myExcel.Cells[UpBound1 + 1, UpBound2 + 1]);
myRange.Select();
//用陣列一次寫入資料
myRange.Value2 = "'" + myData;
//設定儲存路徑
string PathFile = Directory.GetCurrentDirectory() + @"\button4.xls";
//另存活頁簿
myBook.SaveAs(PathFile, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing
                            , XlSaveAsAccessMode.xlNoChange, Type.Missing, Type.Missing, ype.Missing,Type.Missing,Type.Missing);
//關閉活頁簿
myBook.Close(false, Type.Missing, Type.Missing);
//關閉Excel
myExcel.Quit();
//釋放Excel資源
System.Runtime.InteropServices.Marshal.ReleaseComObject(myExcel);
myBook = null;
mySheet = null;
myRange = null;
myExcel = null;
GC.Collect();

更多的語法在附件內 


引文来源  [C# .Net] Microsoft.Office.Interop.Excel 讀 / 寫 Excel 語法概全 - VB/ VBA/ C#/ Java/ C++ 語言學習筆

 

posted on 2010-02-05 11:04  自制力缺失症患者  阅读(2844)  评论(1编辑  收藏  举报