乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > Excel VBA工作薄 7.7按照某列/行新增工作表 生成新工作表更方便-excel上下标

Excel VBA工作薄 7.7按照某列/行新增工作表 生成新工作表更方便-excel上下标

作者:乔山办公网日期:

返回目录:excel表格制作

前景提要()

上一节我们学习了通过工作表的指定单元格内容来更改工作表的名字,方法也并不是很难,简单的两句代码就可以实现了,不过批量生成工作表之后,再通过单元格内容来进行重命名似乎有点麻烦,为什么这样说呢?因为我们完全可以根据单元格的内容来批量生成工作表的,在批量生成工作表的过程中,顺带执行工作表的重命名,一举两大,完全不需要再次操作重命名的

场景模拟

假设我们当前有一个班级所有的同学的VBA和python的考试成绩

Excel VBA工作薄 7.7按照某列/行新增工作表 生成新工作表更方便

我们现在希望针对每个童鞋进行分析,将他们本次的考试成功和历次的考试成绩放在一起,形成一个对比,看看该童鞋最近学习的进展情况

那么首先我们需要将这些同学每个人建立一个工作表,这样才可以方便分析

按照之前所需的,我们需要数一下当前一共有多少个童鞋,然后新建多少个工作表,然后再选择单元格区域,再进行批量重命名,这个单元格区域还不能选错,选错了会报错的。非常的麻烦,而且至少需要两个小脚本,今天我们来介绍一个更快捷的,方便的方法。

代码区

Sub ssss()
Dim rng As Range, arr
Set rng = Application.InputBox("请选择单元格区域", "单元格区域的确定", , , , , , 8)
arr = rng
For i = 1 To UBound(arr) + 1
Worksheets.Add after:=ActiveSheet
ActiveSheet.Name = arr(i, 1)
Next i
End Sub

来看看效果,直接执行代码,首先选择单元格区域

Excel VBA工作薄 7.7按照某列/行新增工作表 生成新工作表更方便

然后执行新建,并重命名,看看效果

Excel VBA工作薄 7.7按照某列/行新增工作表 生成新工作表更方便

成功的一次性新增了所有的单元格对应的工作表

这样操作的好处,我们不需要数我们有多少个同学,需要增加多少个表,直接选择单元格就可以了

有多少个单元格,系统就会自动生成多少个新的工作表并进行重命名,降低出错的风险,如果你选择的少了就会这样报错

Excel VBA工作薄 7.7按照某列/行新增工作表 生成新工作表更方便

代码分析

本次的代码也是非常的简单,甚至对于很多有VBA接触的小伙伴来说,这样的代码完全没有阅读压力,我就简单说下思路和方法

For i = 1 To UBound(arr)
Worksheets.Add after:=ActiveSheet
ActiveSheet.Name = arr(i, 1)
Next i

和之前不同的是,我们不需要去数我现在需要增加几个,而是直接根据单元格内容来进行增加,你选择了几个就新增几个,将选择的单元格赋值给数组

通过数组的最大下标来确定最重要多少个工作表,并且循环,每生成一个工作表就用对应的数组的值,进行重命名

这样的操作更加的灵活和方便

=====================================================================

今天和大家分享如何通过VBA根据单元格来进行批量创建工作表和工作表重命名的操作,相对于之前的一些操作步骤,这样的灵活性有了很大的提升,截至到此,关于工作表的新建和重命名所涉及的场景和操作,大致就分享完了,后面我们将会进入工作表的合并这一块的分享,如果大家有什么需求和想法,也可以联系小编哦~~

明晚19:00,准时再见。

相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网