返回列表 上一主題 發帖

一個保護問題,

Worksheets("sheet1").Visible = 0 等同
Worksheets("sheet1").Visible=xlSheetHidden
較低階的隱藏,可以用「格式」=>「工作表」=> 取消隱藏

Worksheets("sheet2").Visible = 2 等同
Worksheets("sheet1").Visible=xlSheetVeryHidden
較高階的隱藏,無法用「格式」=>「工作表」=> 取消隱藏
要用Worksheets("sheet2").Visible = -1 改變其隱藏之狀態

須讀取密碼才能看到隱藏的工作表.rar (16.09 KB)

TOP

回復 41# infoverdad


infoverdad 您好:
有下載附件試用,但好像密碼錯誤也可以打解除保護,是我使用不正確嗎?
peter460191

TOP

回復 42# peter460191
41# 附檔 VBA  ThisWorkbook   已告訴你密碼
  1. Private Sub Workbook_Open()
  2.     Worksheets("Secret").Visible = 2
  3.     If InputBox("請輸入密碼或取消") = "123" Then
  4.         MsgBox "USER,你好!!"
  5.         'Worksheets("Secret").Visible = -1
  6.         Worksheets("Secret").Visible = xlSheetVisible
  7.         Sheets("Secret").Cells.Font.ColorIndex = 56
  8.     Else
  9.         'MsgBox "你好!!"
  10.         Sheets("Secret").Cells.Font.ColorIndex = 2
  11.         Worksheets("Secret").Visible = 2
  12.     End If
  13. End Sub
複製代碼

TOP

本帖最後由 luhpro 於 2014-11-1 21:47 編輯
Worksheets("sheet1").Visible = 0 等同
Worksheets("sheet1").Visible=xlSheetHidden
較低階的隱藏,可 ...
infoverdad 發表於 2011-7-19 22:51

其實只要可以開啟巨集編輯畫面,
工作表沒有設保護,
當 Excel VBA 沒有設保護密碼,
可以解除工作表的隱藏狀態.


不過若 Excel VBA 有設密碼,
若設 Visible=0
Excel 會擋 Visible 屬性的設定.
無法設定Visible屬性.png

但若設  Visible=-1
則不管你有沒有設 Excel VBA 保護密碼, (可看到圖中程式碼編輯區是灰色的,該程式執行時並沒有解開 Excel VBA 密碼)
照樣通通都能看到,
所以這種保護方式層級其實並不高喔.

TOP

        靜思自在 : 吃苦了苦、苦盡廿來,享福了福、福盡悲來。
返回列表 上一主題