【发布时间】:2013-05-23 04:24:44
【问题描述】:
我需要创建一个非常大的 Excel 文件,但一个工作表中的 Excel 文件最多可以包含 65k 行。所以,我想把我所有的信息分成几个动态的工作表。 这是我的大概代码
//------------------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();
如何在我的 foreach 循环中添加新工作表并使用某些条件为工作表命名(用户可以在列表页面底部的 Excel 中看到该名称)?
有些是这样的
foreach (string letter in letters)
{
if (letter == SOME)
{
AddNewWorksheet and give name SOME
}
xlWorkSheet.Cells[rowIndex, 1] = letter;
rowIndex++;
}
最后如何保存所有工作表?
【问题讨论】:
-
Excel 2010 支持 100 万行。你是哪个版本的?
-
我尝试保存为 .xls
-
但是即使我将保存在 2010 版本中,我的问题仍然是有道理的,因为它会是更易读的格式。
-
.xls - 2007 版本之前的格式,所以我的回答暗示我使用的版本低于 2010
标签: c# excel xls worksheet-function