| 订阅 | 在线投稿
分享
 
 
 

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++; }
󰈣󰈤
 
 
 
>>返回首页<<
 
 
 转载本文
 UBB代码 HTML代码
复制到剪贴板...
 
 热帖排行
 
 
王朝网络微信公众号
微信扫码关注本站公众号wangchaonetcn
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
©2005- 王朝网络 版权所有