返回目录:excel表格制作
前景提要()
上节我们通过VBA成功的将创建工作表和工作表重命名这两个动作同时结合在一起,一次性完成了,大大的提高了我们的工作效率,解放了生产力,既然说到了工作表的重命名,很多小伙伴们就有话题了,有小伙伴们说他们实际操作中,没有这么规则的命名的情况,因为很多时候他们都是数据的接收者,接受来自各个环节和部门的报表,然后进行加工汇总分析的,他们希望能够在已经有的工作表的基础,对工作表的名字进行适当的修改,变成比较好区分的样子,最常见的就是增加前缀,后缀了,今天我们就批量给工作表增加前缀来举例
场景模拟
假设我们手上有高三上周周考的成绩单,面临着高考,大家的压力都非常的大,我们现在希望将他们本周周考的成绩和上次周考的成绩放在一起进行分析,但是我们进行汇总的时候,发现工作表没有前缀,都是1班,2班。。。。。
这样命名的,如果放在一起汇总的话,没有办法区分哪个是上周,哪个是本周的数据,
需要增加一个前缀,方便区分,其实就是简单的工作表的重命名+字符串的处理,来,我们上代码看看
代码区
Sub test()
Dim sth As Worksheet
For Each sth In Worksheets
sth.Name = "本周-" & sth.Name
Next sth
End Sub
代码也是非常的简单
来看看效果
成功的在所有的工作表名称前面,增加了本周-这样的结果,方便我们进行区分,当我们将上一周的数据粘贴过来的时候,就不会出现重名的情况了,既可以方便的进行数据的分析了。
这样分析就更加的方便和醒目了。
代码分析
Dim sth As Worksheet
声明一个变量sth ,代表是一个工作表
然后通过for循环在当前所有的工作表中进行循环,将每个工作表的名字前面增加一个前缀
For Each sth In Worksheets
sth.Name = "本周-" & sth.Name
Next sth
这里写了两个sth.name,大家可能会混论,这里我们改下,将后面的sth改为ActiveSheet,即当前工作表,我们来调试下代码,方便打击理解每一步的过程
当前的活动工作表是第一个表,ActiveSheet.Name得到的就是这个工作表的名字
那么我们最终的效果就是在“本周-1班”的前面再加个“本周-”那么这句代码执行完成之后,sth.name应该就是“本周-本周-1班”,我们来看看实际
这样大家应该能够理解每一步执行的过程和效果了吧。
至于后缀,和前缀是一样的方法,大家可以自己来是操作下咯~~
=======================================================
今天和大家分享了批量给工作表增加前后缀的方法,此方法能够适用于在已经有大量工作表数据的基础上进行简单的修改,形成自己需要的,有一定规律的工作表,方便简单的识别、区分
但是在实际工作中,也并不一定所有的工作表是简单添加前缀就可以解决的,有时候我们可能需要通过指定的单元格来命名工作表名称,比方说这6个班级是来自不同的年级,并且还不是按照指定的顺序的,那么要如何实现批量修改命名呢?留个小悬念,明天我们来揭晓
明晚19:00,准时再见。