2017-08-17 102 views
0

我使用Excel 2013,並有一個宏複製「主」工作表到工作簿的結束,一旦用戶填寫。根據「主」報告編號重新命名複製的工作表。有沒有辦法,一旦表格被複制到最後,它可以被鎖定,因此用戶不能對其進行任何更改。我只是希望他們能夠查看它。我已經在網上研究了一些示例代碼,但似乎沒有做我想做的事情。任何人有任何想法或可以幫助嗎?許多感謝鎖定工作表

+0

什麼示例代碼不起作用,以什麼方式? – pnuts

+0

使用宏記錄器執行步驟並檢查模塊。 – Sorceri

回答

0

您可以使用.PROTECT和.Unprotect性能。下面是一個示例sub,它保護工作簿中的所有工作表,圖表,然後保護工作簿本身。下面是a site更詳細的信息,也將是很好的回顧how items are protected in Excel一般。

Sub protectWk(wk As Workbook) 
Dim sh as Worksheet, ch as Chart 
For Each sh In wk.Worksheets 
    sh.Protect ("password") 
Next 
For Each ch In wk.Charts 
    ch.Protect ("password") 
Next 
wk.Protect ("password") 
wk.Close SaveChanges:=True 
End Sub 
+0

太棒了!謝謝! –

+0

我必須保護工作表,但所有的細胞被解鎖。我的代碼如下: –

+0

雖然表受保護,現在在指定範圍內的所有單元格顯示被鎖定,但仍可供用戶選擇。我的代碼如下:'代碼」 '選擇&鎖細胞 表(則strName).Range。( 「A1:Y89」)選擇 ' 鎖定的那些細胞 Selection.Locked =假 Selection.FormulaHidden =假 選擇。 FormulaHidden = True Selection.Locked = True '保護工作表 表(strName).Protect(「Password123!」) End Sub'code'我在哪裏出錯? –