Private Sub Workbook_Open()
'請將程式碼複製到 :VBA視窗的ThisWorkbook中,存檔後重新開檔便可
Dim 密碼 As String, Sh As Worksheet
密碼 = "1234"
Set Sh = ActiveSheet '作用中的工作表
'Set Sh = Sheet1 'VBA 物件名稱
'Set Sh = Sheets("測試工作表") '活頁簿工作表名稱
'Set Sh = Sheets(2) '活頁簿工作表的排序
With ThisWorkbook 'ThisWorkbook -> VBA 的活頁簿物件
.Names.Add "日期", Date - 1, False '活頁簿定義名稱, False->隱藏
'執行一次後請在前面加上註解 " ' " 或 刪除 停止此程式碼執行
If Val(Replace(.Names("日期"), "=", "")) <> Date Then '不是今日
.Names("日期").Value = Date '修改Value為今日
.Names.Add "MyRange", Sh.UsedRange ', False '定義名稱"MyRange" 範圍指定為 ActiveSheet.UsedRange
'.Names.Add "MyRange", Sh.UsedRange , False 'False->定義名稱隱藏
With Sh '指定的工作表
.Unprotect 密碼 '取消工作表保護
.Cells.Locked = False '取消儲存格鎖定->工作表的Cells
.Cells.FormulaHidden = False '取消儲存格隱藏->工作表的Cells
Range("MyRange").Locked = True '儲存格鎖定-> "MyRange"的範圍
Range("MyRange").FormulaHidden = True '儲存格隱藏-> "MyRange"的範圍
.Protect 密碼 '工作表設定保護
End With
End If
End With
End Sub
沒有留言:
張貼留言