Excel2010VBA入门041实现逐行输入(protect方法)

更新时间:2023-06-22 07:03:41 阅读: 评论:0

Excel2010VBA⼊门041实现逐⾏输⼊(protect⽅法)
⽬录
⽰例:
如图所⽰,该表为某公司⼊库流⽔账模板。现在希望能够限定使⽤者逐⾏输⼊,即只能输⼊当前⾏的内容,不能修改⼰输⼊的内容或跳⾏输⼊。该功能是否能够利⽤VBA实现?
⽇期/时间产
2012/1/1A2
2012/1/2A3
学校请假条
2012/1/3A4
2012/1/4A5
2012/1/5A6
2012/1/6A7
2012/1/7A8
2012/1/8A9
2012/1/9A10泥泞
2012/1/10A11鲤鱼养殖技术
2012/1/11A12
2012/1/12A13
A14实例代码:
Option Explicit
Sub 逐⾏输⼊()
Dim NewRowN As Long
'获取数据新⾏
NewRowN = Cells(Rows.Count, "A").End(xlUp).Row + 1
'取消保护
ActiveSheet.Unprotect
'锁定所有单元格
Cells.Locked = True
'数据新⾏取消锁定
Rows(NewRowN).Locked = Fal
中餐厅效果图
Cells(NewRowN, "A").Select
'重新保护⼯作表
ActiveSheet.Protect
End Sub
Sub 取消保护()
ActiveSheet.Unprotect
End Sub
Protect⽅法和Unprotect⽅法
Protect⽅法和Unprotect⽅法实质是⼯作表的⽅法,可以实现保护⼯作表或者取消保护⼯作表。Protect⽅法的语法如下:
sht.ProtectPassword,DrawingObjects,content,Scenarios,UrInterfaceOnly, AllowFormattingCells,AllowFormattingColumns,AllowFormattingRows,AllowInrtingC AllowInrting
Rows,AllowInrtingHyperlinks,AllowDeletingColumns,AllowDeletingRows,AllowSorting,AllowFiltering,AllowUsingPivotTables)
参数表
名称必需/可选数据类型说明
Password可选Variant 指定⼯作表或⼯作簿的区分⼤⼩写密码的字符串。 如果省略此参数,可以不使⽤密码地解除对⼯作表或⼯作簿的保护。 否则,必须指定密码才能解除对⼯作表或⼯作簿的保护。 如果忘记密码,则⽆法解除对⼯作表或⼯作簿的保护。
请使⽤组合⼤⼩写字母、数字和符号的强密码。 弱密码不混合使⽤这些元素。 例如,强密码:Y6dh!et5。 弱密码:Hou27。 密码的长度应为 8 个或更多字符。 使⽤ 14 个或更多字符的通⾏短语更好。
梁启超名言
请务必记住您的密码。 如果您忘记了密码,Microsoft ⽆法找回它。 请将您编写的密码保存在安全的位置并远离它们要帮助保护的信息。
DrawingObjects可选Variant如果为 True,则保护形状。 默认值为 True。
Contents可选Variant 如果为 True,则保护内容。 对于图表,这将保护整个图表。 对于⼯作表,这将保护锁定单元格。 默认值为 True。
Scenarios可选Variant如果为 True,则保护⽅案。 此参数仅对⼯作表有效。 默认值为 True。
UrInterfaceOnly可选Variant 如果为 True,则保护⽤户界⾯,但不保护宏。 如果省略此参数,保护将应⽤于宏和⽤户界⾯。
AllowFormattingCells可选Variant如果为 True,则允许⽤户格式化受保护⼯作表上的任何单元格。 默认值为 Fal。AllowFormattingColumns可选Variant如果为 True,则允许⽤户格式化受保护⼯作表上的任何列。 默认值为 Fal。AllowFormattingRows可选Variant如果为 True ,则允许⽤户格式化受保护的⼯作表上的任何⾏。 默认值为 Fal。AllowInrtingColumns可选Variant如果为 True,则允许⽤户在受保护⼯作表上插⼊列。 默认值为 Fal。AllowInrtingRows可选Variant如果为 True,则允许⽤户在受保护⼯作表上插⼊⾏。 默认值为 Fal。AllowInrtingHyperlinks可选Variant如果为 True ,则允许⽤户在受保护的⼯作表上插⼊超链接。 默认值为 Fal。
AllowDeletingColumns可选Variant 如果为 True,则允许⽤户在受保护的⼯作表上删除列,其中要删除的列中的每个单元格都处于解锁状态。 默认值为 Fal。
AllowDeletingRows可选Variant 如果为 True,则允许⽤户在受保护的⼯作表上删除⾏,其中要删除的⾏中的每个单元格都处于解锁状态。 默认值为 Fal。
AllowSorting可选Variant 如果为 True,则允许⽤户对受保护⼯作表进⾏排序。 排序范围内的每个单元都必须处于解锁或不受保护的状态。 默认值为 Fal。
AllowFiltering可选Variant 如果为 True,则允许⽤户在受保护的⼯作表上设置筛选。 ⽤户可以更改筛选条件,但⽆法启⽤或禁⽤⾃动筛选。 ⽤户可以在现有⾃动筛选上设置筛选。 默认值为 Fal。
AllowUsingPivotTables可选Variant 如果为 True ,则允许⽤户在受保护的⼯作表上使⽤数据透视表。 默认值是 Fal。
Unprotect⽅法的语法如下:
Sht.Unprotect (Password)
其中,Sht为⼀个⼯作表对象,本例中可以使⽤ActiveSheet表⽰当前的⼯作表。参数Pas sword为保护⼯作表的密码。给自己的生日祝福
徐家汇花园单元格的Locked属性
单元格的Locked属性仅在保护⼯作表时发挥作⽤。在保护⼯作表后,Locked属性设置为True的单元格将不能被修改。
允许VBA修改保护后的⼯作表员工自愿离职协议书
当⼯作表执⾏保护后,⽤户⽆法修改锁定的单元格,此时VBA也⽆法修改锁定的单元格。然⽽,在许多情况下,开发者需要⽤代码修改单元格。许多开发者采⽤先取消保护⼯作表,待修改完单元格后再次保护的⽅法。实质上,在使⽤VBA进⾏⼯作表保护时,只需要将UrInterFaceOnly参数设置为True,即可在保护⼯作表后使⽤VBA程序修改单元格的值,参考代码如下:
ActiveSheet.Protect UrInterFaceOnly:=True

本文发布于:2023-06-22 07:03:41,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/1011660.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:保护   作表   密码   修改
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图