总结一下:
1,需要添加引用COM组件 Microsoft Excel 11.0 Libray
2,需要Using System.Reflection
3,如果运行提示拒绝访问的权限,需要对DCOM组件进行配置,开始运行输入“dcomcnfg”,把相关的安全性设置为everyone
4,关键代码
#region 导出到excel多sheet
private void ToExcelSheet(DataSet ds,string sheetName)
{
int testnum = ds.Tables.Count-1;
Excel.Application appExcel;
appExcel = new Excel.Application();
Excel.Workbook workbookData;
Excel.Worksheet worksheetData;
workbookData = appExcel.Workbooks.Add(Missing.Value);
for(int k=0;k<ds.Tables.Count;k++)
{
worksheetData = (Excel.Worksheet)workbookData.Worksheets.Add(Missing.Value,Missing.Value,Missing.Value,Missing.Value);
worksheetData.Name = sheetName+"_"+testnum.ToString();
testnum--;
if(ds.Tables[k]!=null)
{
for(int i=0;i<ds.Tables[k].Rows.Count;i++)
{
for(int j=0;j<ds.Tables[k].Columns.Count;j++)
{
worksheetData.Cells[i+1,j+1] = ds.Tables[k].Rows[i][j].ToString();
}
}
}
worksheetData.Columns.EntireColumn.AutoFit();
workbookData.Saved = true;
}
string strFileName = sheetName + ".xls";
workbookData.SaveCopyAs(strFileName);
appExcel.Quit();
}
#endregion