我需要使用 OfficeWriter 锁定 Excel 文件中的特定单元格值。这可能吗?如果是这样,我需要使用哪些 API 调用?
问问题
88 次
1 回答
3
使用 OfficeWriter 锁定单元格与在 Excel 中相同:所有单元格都具有“锁定”属性作为其样式的一部分。默认情况下, locked 属性设置为true,但在工作表受到保护之前不会生效。
ExcelApplication xla = new ExcelApplication();
Workbook wb = xla.Create(ExcelApplication.FileFormat.Xlsx);
Worksheet ws = wb.Worksheets[0];
//Protecting the sheet will lock any cells
//that have the locked property set to true
ws.Protect("MyPassword");
要使某些单元格保持解锁状态,请创建一个将 locked 属性设置为false的样式。然后将样式应用于您希望保持解锁状态的单元格。
ExcelApplication xla = new ExcelApplication();
Workbook wb = xla.Create(ExcelApplication.FileFormat.Xlsx);
Worksheet ws = wb.Worksheets[0];
//Create the 'unlocked' style
Style unlockedStyle = wb.CreateStyle();
unlockedStyle.CellLocked = false;
//Apply to any cells you wish to leave unlocked
//when the worksheet is protected
ws.Cells["A1"].Style = unlockedStyle;
ws.Cells["B1"].Style = unlockedStyle;
//Protecting the sheet will lock any cells
//that have the locked property set to true
ws.Protect("MyPassword");
我们的文档中有一些关于保护工作表的其他相关信息:http ://wiki.softartisans.com/display/EW8/Protecting+Your+Worksheet
请注意,我为 OfficeWriter 的制造商 SoftArtisans 工作。
于 2013-10-18T12:20:27.713 回答