Excel.Application excel = new Excel.Application();
excel.Visible = true;
excel.Workbooks.Add(Missing.Value);
Worksheet worksheet = (Worksheet) excel.ActiveSheet;
worksheet.Cells[1,1] = ds.Tables[i]["列名"].ToString(); //这用个循环写入数据
worksheet.SaveAs("c:\\bin.xls",Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value);
excel.Quit();
System.GC.Collect();

解决方案 »

  1.   

    Excel.Application excel = new Excel.Application();
    excel.Visible = true;
    excel.Workbooks.Add(Missing.Value);
    Worksheet worksheet = (Worksheet) excel.ActiveSheet;
    for(int i=0;i<dt.Columns.Count)
    {
       for(int j=0;j<dt.Rows.Count;j++)
      {
       worksheet.Cells[i,j] = dt.Rows[i][j].ToString(); //这用个循环写入数据
       }
    }
    worksheet.SaveAs("c:\\bin.xls",Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value);
    excel.Quit();
    System.GC.Collect();
      

  2.   

    Excel.Application的引用空间?(using System.? )
      

  3.   

    Visual Studio Tools for the Microsoft Office System
      

  4.   

    using Excel
    首先要添加Excel的引用
      

  5.   

    添加了
    using Excel
    怎么还是找不到呢
    The type or namespace name 'Excel' could not be found (are you missing a using directive or an assembly reference?)
      

  6.   

    如果用 freecs(北狼) 的方法,可以完成DataSet转到Excel里面。但所用时间比较长,我测试过,导出三百条记录,耗时大约十分钟(本机),如果是在网络上,时间可能更长……
    直接用Excel里面的数据导出功能吧。它所需要的时间不因为你的记录数据多少而来。一万条记录,只用十秒左右(如果情况好点,五秒就可以了)。
    详细的在:
    http://www.csdn.net/Develop/Read_Article.asp?Id=22183
      

  7.   

    添加了using Excel找不到的原因是你要在资源管理器中添加Excel引用。
    具体的看:http://www.csdn.net/Develop/Read_Article.asp?Id=21391
      

  8.   

    引用了Microsoft Excel 9.0 Object Library后,
    运行到这一行出错:excel = new Excel.ApplicationClass();
    System.UnauthorizedAccessException: 拒绝访问
    再请各位老大帮帮忙
      

  9.   

    using System;
    using Excel;
    namespace 类库
    {
     public class Excel导出
     {
      public Excel导出(string 查询语句,string 标题)
      {
                Excel.Application excel;
                Excel._Workbook xBk;
                Excel._Worksheet xSt;
                Excel._QueryTable xQt;
                string Conn = "ODBC;DRIVER=SQL Server;SERVER=[服务器地址或者名称];UID=sa;PWD=[密码];APP=[应用程序名称(一般为操作系统名)];WSID=[工作站名称(客户端)];DATABASE=[数据库名称]";
                string Select = 查询语句;
                excel = new Excel.ApplicationClass();
                xBk = excel.Workbooks.Add(true);
                xSt = (Excel._Worksheet)xBk.ActiveSheet;
                excel.Cells[2,2] = 标题;
                xSt.get_Range(excel.Cells[2,2],excel.Cells[2,2]).Font.Bold = true;
                xSt.get_Range(excel.Cells[2,2],excel.Cells[2,2]).Font.Name = "黑体";
                xSt.get_Range(excel.Cells[2,2],excel.Cells[2,2]).Font.Size = 22;
                xQt = xSt.QueryTables.Add(Conn,xSt.get_Range(excel.Cells[4,2],excel.Cells[4,2]),Select);
                xQt.Name = "导出示例";
                xQt.FieldNames = true;
                xQt.RowNumbers = false;
                xQt.FillAdjacentFormulas = false;
                xQt.PreserveFormatting = false;
                xQt.BackgroundQuery = true;
                xQt.RefreshStyle = Excel.XlCellInsertionMode.xlInsertDeleteCells;
                xQt.AdjustColumnWidth = true;
                xQt.RefreshPeriod = 0;
                xQt.PreserveColumnInfo = true;
                xQt.Refresh(xQt.BackgroundQuery);
                excel.Visible = true;
      }
     }
    }这是一个写好的类
    只需要实例化,传参数进去就可以导出Excel了
    在我本机已经测试通过string Conn = "ODBC;DRIVER=SQL Server;SERVER=grd-uright-fan;UID=sa;PWD=guru;APP=Microsoft(R) Windows (R) 2000 Operating System;WSID=GRD-URIGHT-FAN;DATABASE=MyDatabases";这是连接字符传的例子
     
      

  10.   

    请问楼上,生成的excell文件,保存在什么地方呢
      

  11.   

    Missing.Value?
    有问题,完整的引用名称是什么?
      

  12.   

    using Excel = Microsoft.Office.Interop.Excel;
      

  13.   

    我把ASPNET的写权还有IUSER的写权都给拉
    怎么我写excel = new Excel.ApplicationClass();的时候还是错的。