Office 板


LINE

軟體:EXCEL 版本:2016 各位前輩大神好, 小弟因整理舊資料而製作一份包含多個工作表的活頁簿, 為了避免切換工作表時不小心誤刪除或誤更改資料內容, 希望用保護工作表的方式將已整理完畢的工作表上鎖, 由於工作表份數約有10+, 一個一個手動上鎖太繁複, 所以寫了一段簡單的VBA程式自動上鎖,程式碼如下: Sub protect() Dim key as string key = InputBox("Enter the password:") For Each ws In Worksheets: ws.protect Password = key Next ws End Sub 上述程序可以執行, 卻無法透過校閱>取消保護工作表>手動方式輸入密碼解鎖, 會顯示密碼錯誤的訊息, 小弟在上網查資料之後已得知上述程式碼須修正為: For Each ws In Worksheets: ws.protect Password:=key 即可使用手動方式輸入密碼解鎖。 問題: 原版本的程式語法雖然有錯誤但卻仍能執行並且成功上鎖工作表, 請問在這種情況下上鎖之後, 解鎖密碼是EXCEL預設的嗎? 要輸入甚麼才能解鎖呢? 希望版上前輩大大能指點迷津! 感激感謝! --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 131.147.175.48
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Office/M.1541530317.A.BA1.html
1F:→ soyoso: 變數=key方面判斷,寫入應為布林值 11/07 07:50
2F:→ soyoso: 可在另一個程序內以 for each ws in worksheets: 11/07 07:51
3F:→ soyoso: ws.unprotect false..next的方式解鎖試試試 11/07 07:51
4F:→ soyoso: 如果手動輸入的話 FALSE (大寫) 11/07 08:00
5F:→ twtpcsilence: 手動輸入大寫FALSE已可成功解鎖,感謝soy大大指點! 11/07 14:40
6F:→ twtpcsilence: 另外想再請教,使用=key的話,無論後面寫了甚麼, 11/07 14:41
7F:→ twtpcsilence: 都會被系統判斷為FALSE嗎? 11/07 14:42
8F:→ twtpcsilence: 原本以為布林值要設定為true/false才會作用 11/07 14:43
9F:→ soyoso: 後面寫什麼是指,worksheet.unportect,password後面的參 11/07 14:56
10F:→ soyoso: 數嗎? 11/07 14:57
11F:→ soyoso: 如果是要問後面的參數,判斷上是否為false的話,可google 11/07 15:00
12F:→ soyoso: worksheet.unprotect會有預設值,如DrawingObjects、 11/07 15:01
13F:→ soyoso: Contents、Scenarios會預設為true,其他有些是false 11/07 15:02
14F:→ twtpcsilence: 原本password:=key,key會是使用時所設定的密碼 11/07 16:38
15F:→ twtpcsilence: 但如果寫成password=key,就無法使用設定的密碼 11/07 16:39
16F:→ twtpcsilence: 必須輸入soy大前面說的,輸入大寫FALSE才可解鎖 11/07 16:39
17F:→ twtpcsilence: 想請問的部分是,如果編寫password= 的話 11/07 16:41
18F:→ twtpcsilence: 是否手動解鎖時都是輸入大寫FALSE呢? 11/07 16:41
19F:→ twtpcsilence: worksheet.protect包含的其他屬性設定有上網查資料 11/07 16:43
20F:→ twtpcsilence: 誠如soy大所說,有些預設是true有些是false 11/07 16:43
21F:→ twtpcsilence: 小弟不解的地方是,password=key而非password=false 11/07 16:45
22F:→ twtpcsilence: 卻為什麼手動解鎖時要輸入FALSE能解鎖呢? 11/07 16:45
23F:→ newacc: 因為Password:=key是把key值assign給Password 11/07 16:49
24F:→ newacc: 而password=key是比較password和key是否相等,回傳布林值 11/07 16:49
25F:→ newacc: 初始並沒有預設Password,因此Password=key回傳FALSE 11/07 16:50
26F:→ newacc: 也就是說ws.protect第一個參數是FALSE 11/07 16:51
27F:→ newacc: 其實也可以單純使用ws.protect key來上鎖 11/07 16:53
28F:→ soyoso: 是否手動解鎖時都是輸入大寫FALSE呢?不一定,當inputbox 11/07 17:33
29F:→ soyoso: 無輸入資料或取消時,則是TRUE 11/07 17:33
30F:→ soyoso: password=key,這裡的password是一個變數和key一樣,這兩 11/07 17:38
31F:→ soyoso: 個變數看是否相等 11/07 17:38
32F:→ twtpcsilence: 感謝new大及soy大的詳盡解說,終於弄懂了,感謝! 11/07 17:42







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:BuyTogether站內搜尋

TOP