如何:保护工作簿

可以保护 Microsoft Office Excel 工作簿,使用户无法添加或删除工作表,并且还可以通过编程方式取消对工作簿的保护。 您可以选择指定一个密码,指示是否希望保护该结构(使用户无法移动表)以及指示是否希望保护工作簿的窗口。

**适用于:**本主题中的信息适用于 Excel 2007 和 Excel 2010 的文档级项目和应用程序级项目。有关更多信息,请参见按 Office 应用程序和项目类型提供的功能

保护工作簿并不会阻止用户编辑单元格。 若要保护数据,您必须保护工作表。 有关更多信息,请参见如何:保护工作表

下面的代码示例使用变量来存放从用户那里获取的密码。

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

保护工作簿

  • 调用工作簿的 Protect 方法并包含一个密码。 若要使用下面的代码示例,请在 ThisWorkbook 类中运行此示例,而不要在工作表类中运行。

    Me.Protect(getPasswordFromUser)
    
    this.Protect(getPasswordFromUser, missing, missing);
    

取消工作簿保护

  • 调用 Unprotect 方法,如果需要,请传递一个密码。 若要使用下面的代码示例,请在 ThisWorkbook 类中运行此示例,而不要在工作表类中运行。

    Me.Unprotect(getPasswordFromUser)
    
    this.Unprotect(getPasswordFromUser);
    

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

保护工作簿

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

    Me.Application.ActiveWorkbook.Unprotect(getPasswordFromUser)
    
    this.Application.ActiveWorkbook.Protect(getPasswordFromUser, missing, missing);
    

取消工作簿保护

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

    Me.Application.ActiveWorkbook.Protect(getPasswordFromUser)
    
    this.Application.ActiveWorkbook.Unprotect(getPasswordFromUser);
    

请参见

任务

如何:设置和清除工作簿密码

如何:保护工作表

如何:隐藏工作表

概念

使用工作簿

Office 解决方案中的可选参数