共用方式為


HOW TO:保護工作表

更新:2007 年 11 月

適用於

本主題中的資訊僅適用於指定的 Visual Studio Tools for Office 專案和 Microsoft Office 版本。

專案類型

  • 文件層級專案

  • 應用程式層級專案

Microsoft Office 版本

  • Excel 2003

  • Excel 2007

如需詳細資訊,請參閱依應用程式和專案類型提供的功能

Microsoft Office Excel 中的保護功能有助於防止使用者和程式碼修改工作表中的物件。根據預設,開啟保護之後所有的儲存格都會鎖定。

使用文件層級自訂時,您可以使用 Excel 設計工具保護工作表。您也可以用程式設計的方式,在執行階段保護工作表。

注意事項:

您不能將 Windows Form 控制項加入至受保護的工作表區域。

使用設計工具

若要用設計工具保護工作表

  • 開啟 [保護工作表] 對話方塊。

    1. 如果您是使用 Excel 2003,請在 Excel 的 [工具] 功能表上指向 [保護],然後按一下 [保護工作表]。

    2. 如果您是使用 Excel 2007,請在 [檢閱] 索引標籤的 [變更] 群組中,按一下 [保護工作表]。

    [保護工作表] 對話方塊便會出現。您可以設定密碼,並且選擇性地指定允許使用者對工作表執行某些動作 (例如格式化儲存格或插入列)。

您也可以允許使用者在受保護的工作表中編輯特定的範圍。

若要允許在特定範圍中進行編輯

  • 開啟 [允許使用者編輯範圍] 對話方塊:

    1. 如果您是使用 Excel 2003,請在 Excel 的 [工具] 功能表上指向 [保護],然後按一下 [允許使用者編輯範圍]。

    2. 如果您是使用 Excel 2007,請在 [檢閱] 索引標籤的 [變更] 群組中,按一下 [允許使用者編輯範圍]。

    [允許使用者編輯範圍] 對話方塊便會出現。您可以指定需要使用密碼才能解除鎖定的範圍,以及不需要密碼就可以編輯範圍的使用者。

在執行階段使用程式碼

下列程式碼會設定密碼 (使用變數 getPasswordFromUser,它含有從使用者取得的密碼),並且只允許排序。

若要在文件層級自訂中使用程式碼保護工作表

  • 呼叫工作表的 Protect 方法。這個範例會假設您是使用名為 Sheet1 的工作表。

    Globals.Sheet1.Protect(getPasswordFromUser, AllowSorting:=True)
    
    Globals.Sheet1.Protect(getPasswordFromUser, 
        missing, missing, missing, missing, missing, missing, missing, missing, 
        missing, missing, missing, missing, true, missing, missing);
    

若要在應用程式層級增益集中使用程式碼保護工作表

  • 呼叫現用工作表的 _Worksheet.Protect 方法。

    CType(Application.ActiveSheet, Excel.Worksheet).Protect(getPasswordFromUser, AllowSorting:=True)
    
    ((Excel.Worksheet)Application.ActiveSheet).Protect(getPasswordFromUser, 
        missing, missing, missing, missing, missing, missing, missing, missing, 
        missing, missing, missing, missing, true, missing, missing);
    

請參閱

工作

HOW TO:移除工作表的保護

HOW TO:保護活頁簿

HOW TO:隱藏工作表

概念

使用工作表

主項目和主控制項概觀

Worksheet 主項目

全域存取 Visual Studio Tools for Office 專案中的物件

了解 Office 方案中的選擇性參數