winform中如何把datagrid中的数据写入excel2003中,有详细代码更好

解决方案 »

  1.   

    参考下
    private void CreateExcel(string strName,DataTable dt)
    {
    Excel._Application excel= new  Excel.ApplicationClass();;
    int rowIndex=1;
    int colIndex=0;

    System.Reflection.Missing miss = System.Reflection.Missing.Value;
    Excel.Workbooks  objbooks = (Excel.Workbooks)excel.Workbooks;
    Excel.Workbook   objbook  = (Excel.Workbook)(objbooks.Add(miss));
    Excel.Worksheet  objsheet = (Excel.Worksheet)objbook.ActiveSheet; foreach(DataColumn col in dt.Columns)
    {
    colIndex++; 
    excel.Cells[1,colIndex]=col.ColumnName;    
    } foreach(DataRow row in dt.Rows)
    {
    rowIndex++;
    colIndex=0;
    foreach(DataColumn col in dt.Columns)
    {
    colIndex++;
    excel.Cells[rowIndex,colIndex]=row[col.ColumnName].ToString();
    }
    }
                                

    objsheet.SaveAs (strName,miss,miss,miss,miss,miss,Excel.XlSaveAsAccessMode.xlNoChange,miss,miss);

    objbook.Close(false,miss,miss);
    objbooks.Close();
    excel.Quit(); //System.Runtime.InteropServices.Marshal.ReleaseComObject();
    System.Runtime.InteropServices.Marshal.ReleaseComObject(objsheet);
    System.Runtime.InteropServices.Marshal.ReleaseComObject(objbook);
    System.Runtime.InteropServices.Marshal.ReleaseComObject(objbooks);
    System.Runtime.InteropServices.Marshal.ReleaseComObject(excel);
    GC.Collect();
    }
      

  2.   

    注意:要先添加office的excel为工程的组件
      

  3.   

    恩,基本就是和skywdq所说的了,很简单的
      

  4.   

    DataGrid数据导入Excel 
    出处    
     
     if(DataGrid1.Items.Count==0)
        {
         Response.Write("<script>alert('对不起,你没有查询到任何记录,不能导出数据')</script>");
        }
        else
        {           Response.Clear(); 
         Response.Buffer= true;
         Response.Charset="GB2312";
         Response.AppendHeader("Content-Disposition","attachment;filename=FileName.xls");
         Response.ContentEncoding=System.Text.Encoding.GetEncoding("GB2312");
         //设置输出流为简体中文
         Response.ContentType = "application/ms-excel";
         //设置输出文件类型为excel文件。
         this.EnableViewState = false;
         System.Globalization.CultureInfo myCItrad = new System.Globalization.CultureInfo("ZH-CN",true);
         System.IO.StringWriter oStringWriter = new System.IO.StringWriter(myCItrad);
         System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);
         DataGrid1.RenderControl(oHtmlTextWriter);
         Response.Write(oStringWriter.ToString());
         Response.End(); 
    }
    ^_^,也是论坛上看到的,自己没调过,试试看@