在Excel表格中,有一个特别的功能,就是可以把不想编辑的内容进行锁定,然后把可以编辑的单元格设置为活动状态。
这个功能在一些操作当中很有用,特别是为使一些固定格式或者内容不想被误操作修改的时候。
那么如何应用vba代码来设置可编辑区域呢?
下面用一个例子来讲解一下关于单元格区域可编辑状态设置和修改、删除等一些基本操作。
AllowEditRange
想要实现这个功能,需要用到一个对象:AllowEditRange
此对象包含三个方法:
ChangePassword‘修改保护密码
Delete’删除对象
Unprotect’解除保护
举例
例子中,我们将用到这三个方法,分别对单元格区域进行设置操作。
分别做了五个按钮,设置可编辑区域、修改密码、删除编辑区域、设置表保护、取消表保护
整个操作过程中,实现了对表内任意选择单元格进行可编辑设置,取消和删除功能。
例如,当我们需要对姓名一列进行可编辑设置的时候,就选择姓名列单元格,然后单击”设置可编辑区域”按钮,输入一个密码,这个密码是当你对姓名进行输入的时候,需要密认证,确认密码正确才可以进行编辑。
如此,就可以防止没有权限的人修改工作表内容。
同时,也可以设置部门、职位等其它项为可编辑区域。
也可以设置不同的密码,那么这样的就对不同信息条目进行了分别管理,只有相应权限的操作人员,才可以对表格进行修改录入操作。
代码
其代码运用并不多,所以学习起来,也不是十分困难,掌握基本一些的功能就能实现。
Private Sub ChangePassWord() '修改密码 Dim w As Worksheet Dim Ps As String Set w = Application.ActiveSheet Ps = InputBox("输入密码", "密码", "") If VBA.Len(Ps) = 0 Then Exit Sub 'Add添加一个可编辑区域'Title区域名称'Range 区域地址范围'Password 密码w.Protection.AllowEditRanges.Add _ Title:="EditRange" & w.Protection.AllowEditRanges.Count, _ Range:=Selection, _ Password:=Ps With Selection .Interior.Color = RGB(152, 59, 50) .Borders.LineStyle = 1 End WithEnd Sub
注意:代码中这个对象并不是我们开始介绍的AllowEditRange对象,而是AllowEditRanges对象。
是一个AllowEditRange对象集合,它里面包含了多个可编辑区域对象的集合,也就是说它是多个AllowEditRange对象的集合。
通过下面的例子就明白了。
删除可编辑区域
Private Sub DelAllowEditRanges() Dim sR As AllowEditRange'定义对象 For Each sR In Activesheet.Protection.AllowEditRanges'遍历集合中的对象 With sR .Range.ClearFormats'清除单元格格式 .Delete'分别删除可编辑区域对象 End With Next sREnd Sub
上面这个过程将删除所有当前工作表中的可编辑区域,并清除格式。
当然了,这段代码并不会对表格内容清除。
如果要清除内容在With里面添加.Range.Clear即可。
欢迎关注、收藏
今天的文章qlabel如何设置成可编辑状态_如何设置Excel表格内可编辑区域,看完这个,马上学会…分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/89424.html