HOW TO:保護工作表
Microsoft Office Excel 中的保護功能有助於防止使用者和程式碼修改工作表中的物件。 根據預設,開啟保護之後所有的儲存格都會鎖定。
**適用於:**本主題中的資訊適用於 Excel 2007 和 Excel 2010 的文件層級專案和應用程式層級專案。如需詳細資訊,請參閱依 Office 應用程式和專案類型提供的功能。
使用文件層級自訂時,您可以使用 Excel 設計工具保護工作表。 您也可以用程式設計的方式,在任何專案類型的執行階段中保護工作表。
注意事項 |
---|
您不能將 Windows Form 控制項加入至受保護的工作表區域。 |
使用設計工具
若要用設計工具保護工作表
在 [檢閱] 索引標籤的 [變更] 群組中,按一下 [保護工作表]。
[保護工作表] 對話方塊便會出現。 您可以設定密碼,並且選擇性地指定允許使用者對工作表執行某些動作 (例如格式化儲存格或插入列)。
您也可以允許使用者在受保護的工作表中編輯特定的範圍。
若要允許在特定範圍中進行編輯
在 [檢閱] 索引標籤的 [變更] 群組中,按一下 [允許使用者編輯範圍]。
[允許使用者編輯範圍] 對話方塊便會出現。 您可以指定需要使用密碼才能解除鎖定的範圍,以及不需要密碼就可以編輯範圍的使用者。
在執行階段使用程式碼
下列程式碼會設定密碼 (使用變數 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);