返回列表 上一主題 發帖

[發問] 請問一下 如何讓今日之前 儲存格 不能修改 刪除 也不能插入列 謝謝

本帖最後由 GBKEE 於 2011-9-25 10:53 編輯

回復 5# 317
請將程式碼複製到 :VBA視窗的ThisWorkbook中,存檔後重新開檔便可
  1. Private Sub Workbook_Open()
  2.     Dim 密碼 As String, Sh As Worksheet
  3.     密碼 = "1234"
  4.     Set Sh = ActiveSheet             '作用中的工作表
  5.     'Set Sh = Sheet1                 'VBA 物件名稱
  6.     'Set Sh = Sheets("麻辣家族討論") '活頁簿工作表名稱
  7.     'Set Sh = Sheets(2)              '活頁簿工作表的排序
  8.     With ThisWorkbook                'ThisWorkbook  -> VBA 的活頁簿物件
  9.         .Names.Add "日期", Date - 1, False     '活頁簿定義名稱, False->隱藏
  10.         '執行一次後請在前面加上註解 " ' " 或 刪除 停止此程式碼執行
  11.         
  12.         If Val(Replace(.Names("日期"), "=", "")) <> Date Then   '不是今日
  13.             .Names("日期").Value = Date                          '修改Value為今日
  14.             .Names.Add "MyRange", Sh.UsedRange ', False  '定義名稱"MyRange" 範圍指定為 ActiveSheet.UsedRange
  15.             '.Names.Add "MyRange", Sh.UsedRange , False     'False->定義名稱隱藏
  16.              With Sh                                        '指定的工作表
  17.                 .Unprotect 密碼                             '取消工作表保護
  18.                 .Cells.Locked = False                       '取消儲存格鎖定->工作表的Cells
  19.                 .Cells.FormulaHidden = False                '取消儲存格隱藏->工作表的Cells
  20.                 Range("MyRange").Locked = True              '儲存格鎖定-> "MyRange"的範圍
  21.                 Range("MyRange").FormulaHidden = True       '儲存格隱藏-> "MyRange"的範圍
  22.                 .Protect 密碼                               '工作表設定保護
  23.             End With
  24.         End If
  25.     End With
  26. End Sub
複製代碼

TOP

回復 7# mycmyc
VBA 巨集 才聽說 會被攻擊 入侵
不隨意下載不明檔案,一般是不會的.

TOP

回復 10# mycmyc
如圖


TOP

回復 13# mycmyc
你的程式是放在SHEET1  開啟檔案是不會執行的
如圖 在點一下 ThisWorkbook  將程式碼 貼在這裡  檔案開啟時會自動執行的

TOP

        靜思自在 : 太陽光大、父母恩大、君子量大,小人氣大。
返回列表 上一主題