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