C# 取消excel工作表的保护
下面是我的C#代码,我试图通过传递密码来解锁受保护的工作表,但它仍然没有解锁工作表,我需要在工作表中添加一些宏 代码: 我不能用“发送键”,请帮我C# 取消excel工作表的保护,c#,excel,vba,C#,Excel,Vba,下面是我的C#代码,我试图通过传递密码来解锁受保护的工作表,但它仍然没有解锁工作表,我需要在工作表中添加一些宏 代码: 我不能用“发送键”,请帮我 感谢使用VBA时的一条建议:开始录制您尝试执行的宏,然后查看生成的代码 看起来您正在尝试打开受保护的文件,而不是取消工作表的保护 我发现了一些类似这样的旧代码(它是VB): 在您的代码中,您正在传递文档密码。您没有取消对工作簿的保护 使用以下代码取消对工作簿的保护: targetExcelFile.Unprotect(password); 如果您有
感谢使用VBA时的一条建议:开始录制您尝试执行的宏,然后查看生成的代码 看起来您正在尝试打开受保护的文件,而不是取消工作表的保护 我发现了一些类似这样的旧代码(它是VB):
在您的代码中,您正在传递文档密码。您没有取消对工作簿的保护 使用以下代码取消对工作簿的保护:
targetExcelFile.Unprotect(password);
如果您有任何问题,请告诉我。VB 6和C#之间的差异非常显著。我不想做所有的工作,只想给他指出正确的方向。他试图打开一个受密码保护的文件,但他想取消工作表的保护。我想答案和(VB6)代码说明了这一点。
Dim WSheet As Worksheet
For Each WSheet In Worksheets
If WSheet.ProtectContents = True Then
WSheet.Unprotect Password:=MyPassword
Else
WSheet.Protect Password:=MyPassword
End If
Next WSheet
targetExcelFile.Unprotect(password);