多语言展示
当前在线:1877今日阅读:86今日分享:14

excel中使用vba检测工作表名称不被修改

小编致力于为大家奉献最有效的经验,让大家能够解决掉问题,但是大家也都知道,每个人遇到的情况都是不一样的,大家在看小编经验的同时,除了跟随操作,也需要自己的思考,举一反三的解决问题,这样才会变得更加有内涵,成为和小编一样的经验达人。excel中使用vba检测工作表名称不被修改,这里,让小编给大家介绍一下。
工具/原料
1

excel2016

2

更多经验请关注,如果帮到了你,请在上方给个投票谢谢支持。 好人一生平安。

3

先顶后看年薪百万,如果帮到了你,帮忙给个好评,这对小编很重要,万分感谢。

方法/步骤
1

首先我们打开一个工作样表作为例子。

2

样表中有两个工作表。一个是5月工资,一个是sheet1。这两个工作表的名称可以被修改。

3

这里如果我们有写个vba如果是以工作表名称来引用对象,那么如果某位用户修改了工作表名称,那么将会造成vba运行出错。所以我们要禁止用户修改工作表名称。

4

我们使用alt+f11组合快捷键进入vbe编辑器,插入一个新的模块,并在模块中输入以下代码:Private Sub worksheet_selectionchange(ByVal target As Range)If Me.Name <> 'sheet1' Then Me.Name = 'sheet1'End Sub

5

因为是检测工作表改变,所以使用的是private私有sub,对象使用的me对象并做出不符合<>则修改名称为原名称的方法。

6

要注意的是,这段代码的判断是在选择的区域发生变更后进行检测,而不是修改工作表名称时进行检测,所以大家要注意,这种方法并不是最安全的方法。

7

先写到这里了,谢谢大家的观看。祝大家生活愉快。小编还有许多其他的经验可以观看,如果无法解决问题可以联系小编进行咨询。看不清楚图片的可以点击放大再看哦。

注意事项
1

个人经验,仅供参考。

2

你的投票是我编辑经验的动力。谢谢你。

推荐信息