【发布时间】:2012-02-02 21:51:12
【问题描述】:
我正在向 Excel 工作簿添加多张工作表。我想在一张纸上有一行,在另一张纸上有另一行。此代码将两行都放在两张纸上。有关如何解决此问题的任何想法?
SpreadsheetDocument ssDoc = SpreadsheetDocument.Create(saveFile, SpreadsheetDocumentType.Workbook);
// Add a WorkbookPart to the document
WorkbookPart workbookPart = ssDoc.AddWorkbookPart();
workbookPart.Workbook = new Workbook();
// Add a WorksheetPart to theWorkbookPart
WorksheetPart worksheetPart = workbookPart.AddNewPart<WorksheetPart>();
worksheetPart.Worksheet = new Worksheet(new SheetData());
Sheets sheets = ssDoc.WorkbookPart.Workbook.AppendChild<Sheets>(new Sheets());
Sheet sheet1 = new Sheet()
{ Id = ssDoc.WorkbookPart.GetIdOfPart(worksheetPart),
SheetId = 1, Name = "Sheet1"
};
Sheet sheet2 = new Sheet()
{
Id = ssDoc.WorkbookPart.GetIdOfPart(worksheetPart),
SheetId = 2, Name = "Sheet2"
};
sheets.Append(sheet1);
sheets.Append(sheet2);
Worksheet worksheet = new Worksheet();
SheetData sheetData = new SheetData();
Row headerRow = new Row();
Cell emptyCell = CreateTextCell(cellHeader, index, "");
headerRow.Append(emptyCell);
Row newRow = new Row();
Cell mycell = CreateTextCell(cellHeader, index, "data");
newRow.Append(mycell);
sheetData.Append(headerRow);
sheetData.Append(newRow);
worksheet.Append(sheetData);
worksheetPart.Worksheet = worksheet;
ssDoc.Close();
【问题讨论】: