excel 怎么自动更改工作表名称(如何防止修改工作表名)

No.1

有没有想过,当你有一个Excel工作表,需要它的名称固定,不希望随便更改。

excel 怎么自动更改工作表名称(如何防止修改工作表名)(1)

这个场景是十分有必要的,因为在一些编程过程中,会预设一些固定名称的表来对编程过程进行使用。

而这些表名一旦被更改,程序就进入了一个无法运行的状态。

如此情况之下,固定表名就显得十分必要了。

下面就介绍一下,如何让表名始终固定为一个名称不变的处理方法。

No.2

全部代码如下图所示:

excel 怎么自动更改工作表名称(如何防止修改工作表名)(2)

这里用到了一些事件,包括工作表Worksheet和工作薄WorkBook中的事件,具体是哪些事件下面详细介绍。

其中,还用到了一个模块编码。

分别说明

第一步:定义常量

excel 怎么自动更改工作表名称(如何防止修改工作表名)(3)

如上图为模块的代码,插入一个常用模块,将如下代码写入模块中。

其含义为,定义一个常量Sname,也就是固定的表名,值可以是任意字符串,字符串要符合Excel工作表名称规则。

第二步:WorkBook事件

excel 怎么自动更改工作表名称(如何防止修改工作表名)(4)

将上图代码写入WorkBook_BeforeClose事件当中。

意义为:当工作薄关闭前触发事件,执行代码。

代码内容为判断Sheet(1)的名称是否为,模块中定义的名称,如果不是,就更改为模块定义的工作表名称,保存工作表,然后才退出工作薄。

第三步:WorkSheet事件

excel 怎么自动更改工作表名称(如何防止修改工作表名)(5)

工作表事件涉及两个:

  1. Worksheet_Deactivate
  2. Worksheet_SelectionChange

两个事件中的代码相同,都是对工作表名称进行判断和修改。

第1个事件Deactivate是当工作表失去焦点时触发,也就是当离开这个工作表或选择其它工作表时触发的事件。

第2个事件SelectionChange,很明显是当工作表单元格改变选择的时候触发,也就是当你单击另一个单元格的时候触发。

No.3

只需要将代码写到指定的位置,那么防止修改工作表名称的功能就实现了。

excel 怎么自动更改工作表名称(如何防止修改工作表名)(6)

本节内容当中,代码的应用很少,重点在于对不同的事件要有清晰的认识。

要分清工作薄和工作表分别指什么意义。

还有一点对模块的了解。

为什么要把常量写到模块里而不是写到工作表或工作薄代码段里?

其实,写进工作表代码段也可以使用,但是出于对代码的精简,这样写更好一点。

---END---

欢迎关注、收藏。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页