| 導購 | 订阅 | 在线投稿
分享
 
 
 

C#將DateTable表數據導出到Excel中

2008-10-25 09:18:33  編輯來源:互聯網  简体版  手機版  評論  字體: ||
 
  在Visual C#中調用Excel表格,並不像讀取Excel表格中的數據那麽容易了,因爲在Visual C#中調用Excel表格要使用到Excel的COM組件。以VS2005爲例,首先添加引用--在COM選項中,添加Microsfot Excel 11.0 Objet Library。

  然後在程序中引入命名空間,Using Microsoft.Office.Interop.Excel;

  以下面幾條語句來介紹一個Excel類中的幾個對象。

  //實例化一個Excel應用程序對象

   Microsoft.Office.Interop.Excel.Application myexcel = new Microsoft.Office.Interop.Excel.Application();

   //添加工作表

   myexcel.Application.Workbooks.Add(true);

   Microsoft.Office.Interop.Excel.Worksheet myworksheet = (Microsoft.Office.Interop.Excel.Worksheet) myexcel.Worksheets["Sheet1"];

   //定義一個區域範圍

   Microsoft.Office.Interop.Excel.Range myrange = myexcel.get_Range(myexcel.Cells[1, 1], myexcel.Cells[3, 3]);

   //顯示這個excel程序

   myexcel.Visible = true ;

  但此時的Excel表格是一個空的表格,沒有任何內容,下面就來介紹如何往Excel表格中輸入數據。

  (3).往Excel表格中輸入數據:

  在命名空間"Excel"中,還定義了一個類"Cell",這個類所代表的就是Excel表格中的一個下單元。通過給差"Cell"賦值,從而實現往Excel表格中輸入相應的數據,下列代碼功能是打開Excel表格,並且往表格輸入一些數據。

   myexcel.Caption = " 花名冊";

   myworksheet .Cells[1, 1] = "花名冊";

   myworksheet .Cells[2, 1] = "姓名";

   (4). Visual C#調用Excel表格,

  了解了上面的這些知識,得到完成上述功能的程序代碼就顯得比較容易了,函數具體如下:

   Excel.ApplicationClass Mylxls = new Excel.ApplicationClass();

   Mylxls.Application.Workbooks.Add(true);

   myexcel.Caption = " 花名冊";

   myworksheet .Cells[1, 1] = "花名冊";

   myworksheet .Cells[2, 1] = "姓名";

   myworksheet .Cells[2, 2] = "性別";

   myworksheet .Cells[2, 3] = "出生年月";

   //合並單元格(第一行的第一列至第3列)

   myworksheet .get_Range(myworksheet .Cells[1, 1], myworksheet .Cells[1, 3]).MergeCells = true;

   //逐行寫入數據,dt爲DataTable對象,從第三行開始寫數據。

  int i=3;

   foreach(DataRow row in dt.Rows)

   {

   myworksheet .Cells[i, 1] = row["姓名"].ToString();

   myworksheet .Cells[i, 2] = row["性別"].ToString();

   myworksheet .Cells[i, 3] = row["出生年月"].ToString();

   i++;

   }
 
  在Visual C#中調用Excel表格,並不像讀取Excel表格中的數據那麽容易了,因爲在Visual C#中調用Excel表格要使用到Excel的COM組件。以VS2005爲例,首先添加引用--在COM選項中,添加Microsfot Excel 11.0 Objet Library。   然後在程序中引入命名空間,Using Microsoft.Office.Interop.Excel;   以下面幾條語句來介紹一個Excel類中的幾個對象。   //實例化一個Excel應用程序對象 Microsoft.Office.Interop.Excel.Application myexcel = new Microsoft.Office.Interop.Excel.Application(); //添加工作表 myexcel.Application.Workbooks.Add(true); Microsoft.Office.Interop.Excel.Worksheet myworksheet = (Microsoft.Office.Interop.Excel.Worksheet) myexcel.Worksheets["Sheet1"]; //定義一個區域範圍 Microsoft.Office.Interop.Excel.Range myrange = myexcel.get_Range(myexcel.Cells[1, 1], myexcel.Cells[3, 3]); //顯示這個excel程序 myexcel.Visible = true ;   但此時的Excel表格是一個空的表格,沒有任何內容,下面就來介紹如何往Excel表格中輸入數據。   (3).往Excel表格中輸入數據:    在命名空間"Excel"中,還定義了一個類"Cell",這個類所代表的就是Excel表格中的一個下單元。通過給差"Cell"賦值,從而實現往Excel表格中輸入相應的數據,下列代碼功能是打開Excel表格,並且往表格輸入一些數據。 myexcel.Caption = "   花名冊"; myworksheet .Cells[1, 1] = "  花名冊"; myworksheet .Cells[2, 1] = "姓名"; (4). Visual C#調用Excel表格,   了解了上面的這些知識,得到完成上述功能的程序代碼就顯得比較容易了,函數具體如下: Excel.ApplicationClass Mylxls = new Excel.ApplicationClass(); Mylxls.Application.Workbooks.Add(true); myexcel.Caption = "   花名冊"; myworksheet .Cells[1, 1] = "  花名冊"; myworksheet .Cells[2, 1] = "姓名"; myworksheet .Cells[2, 2] = "性別"; myworksheet .Cells[2, 3] = "出生年月"; //合並單元格(第一行的第一列至第3列) myworksheet .get_Range(myworksheet .Cells[1, 1], myworksheet .Cells[1, 3]).MergeCells = true; //逐行寫入數據,dt爲DataTable對象,從第三行開始寫數據。      int i=3; foreach(DataRow row in dt.Rows) { myworksheet .Cells[i, 1] = row["姓名"].ToString(); myworksheet .Cells[i, 2] = row["性別"].ToString(); myworksheet .Cells[i, 3] = row["出生年月"].ToString(); i++; }
󰈣󰈤
 
 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
王朝網路微信公眾號
微信掃碼關註本站公眾號 wangchaonetcn
 
  免責聲明:本文僅代表作者個人觀點,與王朝網絡無關。王朝網絡登載此文出於傳遞更多信息之目的,並不意味著贊同其觀點或證實其描述,其原創性以及文中陳述文字和內容未經本站證實,對本文以及其中全部或者部分內容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,並請自行核實相關內容。
 
© 2005- 王朝網路 版權所有