快捷搜索:  汽车  科技

excel如何设置用户可编辑区域:如何设置Excel表格内可编辑区域

excel如何设置用户可编辑区域:如何设置Excel表格内可编辑区域Unprotect'解除保护Delete'删除对象想要实现这个功能,需要用到一个对象:AllowEditRange此对象包含三个方法:ChangePassword‘修改保护密码

在Excel表格中,有一个特别的功能,就是可以把不想编辑的内容进行锁定,然后把可以编辑的单元格设置为活动状态。

这个功能在一些操作当中很有用,特别是为使一些固定格式或者内容不想被误操作修改的时候。

那么如何应用vba代码来设置可编辑区域呢?

下面用一个例子来讲解一下关于单元格区域可编辑状态设置和修改、删除等一些基本操作。

excel如何设置用户可编辑区域:如何设置Excel表格内可编辑区域(1)

AllowEditRange

想要实现这个功能,需要用到一个对象:AllowEditRange

此对象包含三个方法:

ChangePassword‘修改保护密码

Delete'删除对象

Unprotect'解除保护

excel如何设置用户可编辑区域:如何设置Excel表格内可编辑区域(2)

举例

例子中,我们将用到这三个方法,分别对单元格区域进行设置操作。

分别做了五个按钮,设置可编辑区域、修改密码、删除编辑区域、设置表保护、取消表保护

excel如何设置用户可编辑区域:如何设置Excel表格内可编辑区域(3)

整个操作过程中,实现了对表内任意选择单元格进行可编辑设置,取消和删除功能。

例如,当我们需要对姓名一列进行可编辑设置的时候,就选择姓名列单元格,然后单击"设置可编辑区域"按钮,输入一个密码,这个密码是当你对姓名进行输入的时候,需要密认证,确认密码正确才可以进行编辑。

如此,就可以防止没有权限的人修改工作表内容。

同时,也可以设置部门、职位等其它项为可编辑区域。

也可以设置不同的密码,那么这样的就对不同信息条目进行了分别管理,只有相应权限的操作人员,才可以对表格进行修改录入操作。

excel如何设置用户可编辑区域:如何设置Excel表格内可编辑区域(4)

代码

其代码运用并不多,所以学习起来,也不是十分困难,掌握基本一些的功能就能实现。

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 With End 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 sR End Sub

上面这个过程将删除所有当前工作表中的可编辑区域,并清除格式。

当然了,这段代码并不会对表格内容清除。

如果要清除内容在With里面添加.Range.Clear即可。

欢迎关注、收藏

猜您喜欢: