作者CaoCao (超級討厭統一)
看板Office
標題[算表] VBA 活頁簿設定密碼
時間Mon Aug 29 17:19:31 2016
軟體:Excel
版本:2010
大家好,我又來了,請教各位大大,我寫了一個VBA,除了特定幾個工作表外,
其餘都要鎖定,所以我這樣寫:
Sub 鎖定全部工作表()
Dim z As Integer
For z = Sheets.Count To 3 Step -1
Sheets(z).Protect Password:="123456789", DrawingObjects:=True _
, Contents:=True, Scenarios:=False, AllowFiltering:=True _
, AllowUsingPivotTables:=True
Next
End Sub
到這邊都沒問題,不過當巨集肥了,除了這個以外,寫了很多密碼,
所以開始會想將密碼放在同一個地方,方便管理。
1.所以我又寫了另一個巨集:
Sub 鎖定()
ActiveSheet.Protect Password:="abcde"
End Sub()
2.然後在其他有需要的時候引用這個巨集,這樣密碼就是abcde
工作表1.鎖定
我只要修改"鎖定"中的密碼,把 abcde 修改成 13579,
這樣密碼就全部變成13579,可是如果遇到最上面用 For 寫的巨集,
我就不知道怎麼代入,所以請教大家該怎麼修改?謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.244.73.250
※ 文章網址: https://www.ptt.cc/bbs/Office/M.1472462376.A.702.html
※ 編輯: CaoCao (210.244.73.250), 08/29/2016 17:33:38
→ soyoso: 不確定原po要將密碼放在什麼檔案格式下 08/29 17:40
→ soyoso: 如文字檔的話可goole excel vba get data from text 08/29 17:41
→ soyoso: 其他如from word、from access...等,應有範例可參考 08/29 17:44
→ CaoCao: 我是想放在原本的VBA中,因為專案裡有很多個密碼,但是以 08/29 17:47
→ CaoCao: 這個形式寫的密碼我不會更改,所以才想請教各位。 08/29 17:48
→ CaoCao: 我修改內文,應該會清楚一點。 08/29 17:49
※ 編輯: CaoCao (210.244.73.250), 08/29/2016 17:58:27
※ 編輯: CaoCao (210.244.73.250), 08/29/2016 17:59:48
→ CaoCao: 我突然想到,還是有辦法設一個變數讓不同的巨集都能使用? 08/29 18:06
→ CaoCao: 嗯,我知道怎麼做了,用Public,謝謝大家。 08/29 18:10