带有XSLT转换的Excel工作表......需要保护

时间:2009-10-06 13:22:45

标签: c# xml excel xslt password-protection

我需要将DataSet结果导出到Excel文件(使用数据集,XSLT转换和XML生成=> XML电子表格)。这是有效的,但我想保护这张表。读者只能在某些单元格中进行更改,但在某些单元格中不允许进行其他更改。允许的唯一更改是一些特定的单元格(值或下拉列表)。

我该怎么做?

谢谢,

2 个答案:

答案 0 :(得分:0)

您始终可以使用Excel Interop锁定单元格并保护工作表。类似于:

sheet.get_Range("A1, N1").Locked = true;
sheet.Protect(....);

答案 1 :(得分:0)

对于Excel 2003及更高版本,您可以通过将示例工作簿另存为XML来开发解决方案,以提供模板作为XSLT模板的基础。如果您在保存之前保护工作表并添加下拉菜单等,您应该能够计算出生成数据中每个单元格的样式。

Excel 2003不允许工作表受密码保护,但2007可能有一些加密魔法可以解决这个问题。