如何在Excel文件c#中创建新工作表?

Bry*_*yuk 10 c# excel xls worksheet-function

我需要创建一个非常大的Excel文件,但是一个工作表中的excel文件最多可以包含65,000行.所以,我想把我的所有信息分成几个动态的工作表.这是我的近似代码

 //------------------Create Excel App--------------------
Excel.Application xlApp;
Excel.Workbook xlWorkBook;
Excel.Worksheet xlWorkSheet;
object misValue = System.Reflection.Missing.Value;

xlApp = new Excel.Application();
xlWorkBook = xlApp.Workbooks.Add(misValue);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(numberOfLetters);

     foreach (string letter in letters)
     {
      xlWorkSheet.Cells[rowIndex, 1] = letter; 
      rowIndex++;
     }

xlWorkBook.SaveAs(pathXL, Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
xlWorkBook.Close(true, misValue, misValue);
xlApp.Quit();
Run Code Online (Sandbox Code Playgroud)

如何在foreach循环中添加新工作表并使用某些条件为工作表命名(用户可以在列表页面底部的Excel中查看)?

有些人喜欢这样

    foreach (string letter in letters)
    {
      if (letter == SOME)
      {
        AddNewWorksheet and give name SOME
      }
        xlWorkSheet.Cells[rowIndex, 1] = letter; 
        rowIndex++;
    }
Run Code Online (Sandbox Code Playgroud)

以及如何在最后保存所有工作表?

And*_*eev 13

要向工作簿添加新工作表,请使用以下代码:

var xlSheets = xlWorkBook.Sheets as Excel.Sheets;
var xlNewSheet = (Excel.Worksheet)xlSheets.Add(xlSheets[1], Type.Missing, Type.Missing, Type.Missing);
xlNewSheet.Name = "newsheet";

// Uncomment a line below if you want the inserted sheet to be the last one
//xlWorkBook.Sheets.Move(After: xlWorkBook.Sheets.Count);
Run Code Online (Sandbox Code Playgroud)

要保存工作簿调用Save()方法:

xlWorkBook.Save();
Run Code Online (Sandbox Code Playgroud)


Ami*_*imi 5

一般来说,当您想创建新工作表时,只需执行以下操作:

var worksheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets.Add();
Run Code Online (Sandbox Code Playgroud)

知道您已经创建了如下所示的工作簿:

var workbook = excel.Workbooks.Add(Type.Missing);
Run Code Online (Sandbox Code Playgroud)