C#将DateTable表数据导出到Excel中

在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++;      

              }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值