你是否也遇到过这样的问题,使用Excel记录大量的数据,而这些数据需要按照一些特定的要求放在不同的工作表中,这些工作表又可归类为同一类型数据工作表。因而,我们需要大量地新建很多这样的工作表,当然我们可以手动一一地新增,但若是有快速批量新建这些工作表的方法,我们的工作效率就会提升不少!
在Excel中,我们使用VBA的一段简单的代码就能实现以上的要求,主要有两个步骤。
一、如何用VBA代码为工作表命名?
打开Visual Basic,我们添加一个新的模块和过程,称之为“命名工作表”。

在Excel VBA中,工作表作为其中的一个对象,我们可以更改其默认的名称,比如要修改Sheet1的名字为“表1”,需要用到工作表对象的一个属性功能Name。

Sub 命名工作表() Sheet1.Name = "表1"End Sub
执行以上代码后,在Excel中可以看到当前Sheet1工作表的名称已经被更改了。

二、新增工作表的同时更改其名称
我们以创建2020年1至12月共12张工作表为例。在“新建工作表”的过程中先添加一个For循环,让新增工作表的动作执行12次,即可以新建12张工作表。

在For循环中写入新建工作表的代码。

Sub 新建工作表() Dim i As Integer For i = 1 To 12 Sheets.Add after:=Sheets(Sheets.Count) Sheets(Sheets.Count).Name = "2020年" & i & "月" NextEnd Sub1) Sheets.Add after:=Sheets(Sheets.Count):每次在新增工作表时都在最后一张工作表的后面执行。可参考
2) Sheets(Sheets.Count).Name = “2020年”& i & “月”:
这里的Sheets.Count返回的值和上一行代码中的不一样,上一行中返回的值是当前工作表总数,而这行返回的是新增工作表后的工作表总数,可理解为上一行代码的Sheets.Count+1;
.Name后面用“=”符号赋值,然后命名为如“2020年1月”、“2020年2月”等。
最后,我们执行一下以上的代码,即可在Excel文件中新增12张工作表。

当然,要实现以上案例的要求,我们还可以有其他的方法,而使用VBA的确是一个很方便和实现表格的自动化处理的选择。