C#将DataSet中的数据写入Excel中

#region 导出 Excel 文件
///<summary>
/// 导出 Excel 文件
/// </summary>
/// <param name="ds">要导出的DataSet</param>
/// <param name="strExcelFileName">要导出的文件名</param>

private void ExportExcel(DataSet ds,string strExcelFileName)
{
    
object objOpt = Missing.Value;
    Application excel 
= new Application();
    excel.Visible 
= true;
    _Workbook wkb 
= excel.Workbooks.Add(objOpt);
    _Worksheet wks 
= (_Worksheet)wkb.ActiveSheet;

    wks.Visible 
= XlSheetVisibility.xlSheetVisible;
    
    
int rowIndex=1;
    
int colIndex=0;

    DataTable table
=ds.Tables[0] ;
    
foreach(DataColumn col in table.Columns)
    
{
        colIndex
++;    
        excel.Cells[
1,colIndex]=col.ColumnName;                
    }


    
foreach(DataRow row in table.Rows)
    
{
        rowIndex
++;
        colIndex
=0;
        
foreach(DataColumn col in table.Columns)
        
{
            colIndex
++;
            excel.Cells[rowIndex,colIndex]
=row[col.ColumnName].ToString();
        }

    }

    
//excel.Sheets[0] = "sss";
    wkb.SaveAs(strExcelFileName,objOpt,null,null,false,false,XlSaveAsAccessMode.xlNoChange,null,null,null,null,null);
    wkb.Close(
false,objOpt,objOpt);
    excel.Quit();
}

#endregion

posted on 2005-08-01 16:53  [Fenghua]  阅读(4535)  评论(0编辑  收藏  举报

导航