excel生成多个sheet .net

Microsoft.Office.Interop.Excel.Application myExcel = new Microsoft.Office.Interop.Excel.Application(); //生成一个excel对象
   
    Microsoft.Office.Interop.Excel.Workbook workbook = myExcel.Workbooks.Add(Microsoft.Office.Interop.Excel.XlWBATemplate.xlWBATWorksheet); //生成一个workbook对象
   
    Microsoft.Office.Interop.Excel.Worksheet Sheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets[1];//取得第一个 sheet
   
    Object Nothing = System.Reflection.Missing.Value;
   
    Microsoft.Office.Interop.Excel.Worksheet Sheet1 = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets.Add(Nothing, Sheet, Nothing, Nothing);//添加一个sheet 即第二个sheet   其中第一个参数表示 添加的位置在哪个sheet之前;第二个说在之后;第三个是要新建的工作表的数目,默认值为 1;第四个指定工作表类型,类型值可为:xlWorksheet、xlChart、xlExcel4MacroSheet 或 xlExcel4IntlMacroSheet.
   
    //第一行的样式
   
    Microsoft.Office.Interop.Excel.Range range1 = Sheet.get_Range(Sheet.Cells[1, 1], Sheet.Cells[1, column.Length]);//第一行
   
    //range1.Interior.ColorIndex = 15;//15代表灰色
   
    range1.Font.Bold = true; //字体加粗
   
    range1.Font.Size = 14;//字体大小
   
    range1.RowHeight = 20;//行高
   
    range1.MergeCells = true;//合并单元格
   
    range1.VerticalAlignment = XlVAlign.xlVAlignCenter;//上下居中
   
    range1.HorizontalAlignment = XlHAlign.xlHAlignCenter;//左右居中
   
    ////为第一个sheet报表填充数据
   
    if (dt != null)
   
    {
   
    tot = 2 * (dt.Rows.Count + 2) - 2; //画excel数据开始位置
   
    if (dt.Rows.Count > 0)
   
    {
   
    int n = 0;
   
    for (iRow = 3; iRow <= tot; iRow++)
   
    {
   
    int rw = iRow;
   
    iCol = 1;