以编程方式保护工作簿

可以保护Microsoft 办公室 Excel 工作簿,以便用户无法添加或删除工作表,还可以以编程方式取消保护工作簿。 可以选择指定密码,指示是否要保护结构(以便用户无法移动工作表),并指示是否希望工作簿的窗口受到保护。

适用于: 本主题中的信息适用于 Excel 的文档级项目和 VSTO 外接程序项目。 有关详细信息,请参阅办公室应用程序和项目类型提供的功能。

保护工作簿不会阻止用户编辑单元格。 若要保护数据,必须保护工作表。 有关详细信息,请参阅 如何:以编程方式保护工作表

以下代码示例使用变量来包含从用户获取的密码。

保护属于文档级自定义项的工作簿

保护工作簿

  1. Protect调用工作簿的方法并包括密码。 若要使用以下代码示例,请在 ThisWorkbook 类中运行它,而不是在工作表类中运行。

    this.Protect(getPasswordFromUser, missing, missing);
    

取消保护工作簿

  1. 调用该方法 Unprotect ,如果需要,则传递密码。 若要使用以下代码示例,请在 ThisWorkbook 类中运行它,而不是在工作表类中运行。

    this.Unprotect(getPasswordFromUser);
    

使用应用程序级外接程序保护工作簿

保护工作簿

  1. Protect调用工作簿的方法并包括密码。 此代码示例使用活动工作簿。 若要使用此示例,请从项目的 ThisAddIn 类中运行代码。

    this.Application.ActiveWorkbook.Protect(getPasswordFromUser);
    

取消保护工作簿

  1. Unprotect调用活动工作簿的方法,根据需要传递密码。 若要使用此示例,请从项目的 ThisAddIn 类中运行代码。

    this.Application.ActiveWorkbook.Unprotect(getPasswordFromUser);