有的时候,我们需要快速批量在一个工作簿创建多张工作表,如果我们逐个去创建的话需要大量的时间。这里介绍用Excel VBA 来批量创建
首先在新工作表中的一列上输入要新建命名的工作表,并把它们的单元格格式设置为文本格式。再录入代码运行即可自动创建
详细源码:
Public Sub CreateWorksheets()
Dim i As Integer, RangeCount As Integer, SingleCell As Range
Dim ArrayOfValue() As String
With Selection
RangeCount = .Count '统计当前选中区域有多少个单元格,也就是要新建多少张工作表
End With
ReDim ArrayOfValue(RangeCount) '重新定义动态数组的上限
i = 1
For Each SingleCell In Selection '用数组存储每个单元格的内容,也就是每张工作表的标题
ArrayOfValue(i) = SingleCell.Value
i = i + 1
Next SingleCell
For i = 1 To RangeCount '批量创建工作表,每张工作表的标题是对应的每个单元格的内容
Worksheets.Add after:=Worksheets(Worksheets.Count) '在最后一张工作表的后面创建新的工作表
Worksheets(Worksheets.Count).Name = ArrayOfValue(i) '此时刚刚创建的工作表是最后一张工作表
Next i
End Sub
动态图