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!

分享到:

6 条评论

注意: 评论者允许使用'@user空格'的方式将自己的评论通知另外评论者。例如, ABC是本文的评论者之一,则使用'@ABC '(不包括单引号)将会自动将您的评论发送给ABC。使用'@all ',将会将评论发送给之前所有其它评论者。请务必注意user必须和评论者名相匹配(大小写一致)。

昵称
  1. 碎语人生

    过来学习一下。感谢分享。

    1. Kael.Z

      allright~哈

  2. SEO顾问

    看不懂,但是博主的排名很不错,pr也很牛

    1. Kael.Z

      没觉得啊~刚起步的

  3. 亚洲之星

    VBA是不是VB?

    1. Kael.Z

      VB的范围大于VBA,有一定的区别~