动态改变_Excel中如何动态改变可编辑区域?

有这样一个工作场景:我们制作一个工作报表模板给同事填写数据,这个工作表格只可以在预设的可编辑区域编辑,其它都是受密码保护的,而且这个可编辑区域是随着日期——工作周的变化而发生变化的。也就是说在不同的工作周可编辑的区域是会变动的。怎么实现呢?我们来看下具体的步骤吧。

a4eb0b071034e2592d37fe2c562962d5.png

实现步骤:

我们的工作表格的每个可编辑区域大小都是一样的,所不同的是分布的位置不同。如:第一周可编辑区域是$G:$8:$M$32,第二周的可编辑区域是$G:$37:$M$61第三周……以此类推。

71124f54a4cbcf6704cf4c66dee9bdee.png

首先我们先构造一个张每周可编辑区域对照表:

f170503b9e93a7eaae68d24a69d507bc.png

具体公式如图:

8a6cef9e51fa2afc76cbc9221387b4f9.png

2.按ALT+F11进入VBE编程环境,创建模块1,输入如下代码:

Sub auto_open()

ActiveSheet.Unprotect Password:="123"‘去除密码

ActiveSheet.Protection.AllowEditRanges("区域2").Delete’删除可编辑区域

ActiveSheet.Protection.AllowEditRanges.Add Title:="区域2", Range:=Range("G" & Range("$XEZ$3") & ":M" & Range("XFA3"))’创建可编辑区域,这里的可编辑区域由上面所构造的周对照表确定。

ActiveSheet.Protect Password:="123", DrawingObjects:=True, Contents:=True, Scenarios:=True‘设置密码

Range("G" & Range("$XEZ$3")).Select’选择可编辑区域的第一个单元格

End Sub

如图:

a9cf0f9f3e3d9a5a0e62a1c251a4ef73.png

3.将文档保存为代有.xlsm后缀的代有程序的Excel文档。

这样当双击打开此文档便会定位到可编辑区域了,除当前周外的其它区域是受保护不可编辑的。

今天就跟大家分享到这了,不知道大家学会了吗?有任何问题可以给我留言。希望我的分享能对大家的工作有所帮助。喜欢我的文章的小伙伴请 关注、点赞、转发、也可以收藏备用。谢谢大家的支持!

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
相关推荐
©️2020 CSDN 皮肤主题: 游动-白 设计师:白松林 返回首页