VBA锁定条件区域

锁定
今天看到一个锁定的例子,很不错,所以就折腾了下。
特定区域的锁定。比如将A列~D列的范围锁定起来~
写个
代码如下:
 
  1. Sub 锁定()   
  2. Dim a As Long   
  3. a = Sheets(1).[b65536].End(xlUp).Row   
  4.     ActiveSheet.Unprotect   
  5.     Cells.Select   
  6.     Selection.Locked = False   
  7.     Selection.FormulaHidden = False  ‘解除所有单元格的锁定   
  8.     Sheets(1).Range("A1:D" & a).Select   
  9.     Selection.Locked = True   
  10.     Selection.FormulaHidden = False   
  11.     Sheets(1).Range("b" & a + 1).Select   
  12.     ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _   
  13.         False   
  14. End Sub   

代码初步解释下,依照B列为非空值自下而上判断,并锁定A1:DA区域。

当然这个条件和执行方式完全可以自定义,比如change时间,这个更快捷!

Have a try!

分享到: