我只能保护一张纸,但是当我尝试保护Excel文档中的所有纸张时,我在尝试附加SheetProtection时出错。
如果我理解正确,我必须在SheetData之后附加SheetProtection。 这是我的代码:
SheetProtectiond wSheetProtection = new SheetProtection
{
Sheet = true,
Objects = true,
Scenarios = true,
Password = GetSheetPassword( wWorkbookPassword )
};
foreach( Sheet sheet in wSheet )
{
WorksheetPart worksheetPart = GetWorkSheetPartBySheetID(m_SpreadsheetDocument.WorkbookPart, sheet.Id );
worksheetPart.Worksheet.InsertAfter( wSheetProtection, worksheetPart.Worksheet.Descendants<SheetData>( ).LastOrDefault( ) );
}
答案 0 :(得分:0)
通过为每张纸创建SheetProtection
的实例来解决此问题。