【问题标题】:Check whether worksheet is protected when no password has been specified未指定密码时检查工作表是否受保护
【发布时间】:2014-10-15 03:15:42
【问题描述】:

在未指定密码的情况下,我无法找到任何方法来检查 Excel 工作表是否处于保护模式。我正在使用 Excel 互操作程序集处理 Office 2013。

如果有密码,你可以检查 HasPassword 属性,但是当没有密码时,似乎没有任何方法可以确定工作表当前是否受到保护。

如果有任何方法可以确定用户何时选择“取消保护”工作表,我也会接受基于事件的方法。现在的问题是,当他们这样做时,我不知道它是不受保护的,我也无法做出适当的回应。

任何想法将不胜感激,谢谢!

【问题讨论】:

    标签: c# excel excel-interop


    【解决方案1】:

    您可以尝试在没有密码的情况下取消对工作表的保护,并在检查 ProtectContents 属性后捕获错误。

    【讨论】:

    • 但是如果你在一个没有密码的受保护的工作簿上调用 Unprotect() ,它就会变得不受保护,没有错误。所以我不确定你的意思。
    • 你完全按照我说的做。检查它是否使用ProtectContents 保护。如果它受到保护,请尝试取消保护。如果出现错误,您就知道有密码。如果没有错误,只需在没有密码的情况下重新保护。
    • 很抱歉没有更简单的方法,但excel-interop 有时很奇怪。
    猜你喜欢
    • 2015-08-24
    • 2013-03-31
    • 2013-02-05
    • 2016-02-19
    • 1970-01-01
    • 1970-01-01
    • 2014-12-30
    • 2023-03-26
    • 1970-01-01
    相关资源
    最近更新 更多