Dzwebs.Net

撰写电脑技术杂文十余年

通过ActiveWorkbook.Sheets.Add将新表插入到最后的代码

Admin | 2010-8-13 20:14:17 | 被阅次数 | 17528

温馨提示!

如果未能解决您的问题,请点击搜索;登陆可复制文章,点击登陆

  通常情况下,我们在EXCEL的工作薄中,使用菜单操作:插入一个新的工作表,那么,该工作表总是会出现在当前被选中的工作表的前面。

  如果您想将新插入的工作表,让它的位置出现在所有工作表的最后,那么,得使用VBA代码来实现。

  我们可以使用VBA代码中的ActiveWorkbook.Sheets.Add方法,将新插入的工作表插入到所有工作表的最后位置。

  以下是与ActiveWorkbook.Sheets.Add相关的代码示例及说明,希望对您有所帮助。

  一、ActiveWorkbook.Sheets.Add语法

  ActiveWorkbook.Sheets.Add方法,有四个参数,分别是:

  Before:Variant 类型,可选。指定工作表对象,新建的工作表将置于此工作表之前。

  After:Variant 类型,可选。指定工作表对象,新建的工作表将置于此工作表之后。

  Count:Variant 类型,可选。要新建的工作表的数目。默认值为 1。

  Type:Variant 类型,可选。指定工作表类型。

  ActiveWorkbook.Sheets.Add方法使用公式如下:

  ActiveWorkbook.Sheets.Add  参数:=参数值

  如:ActiveWorkbook.Sheets.Add Count:=6 其功能是:在当前工作薄的前面,插入新的六个工作表。

  二、通过ActiveWorkbook.Sheets.Add将新表插入到最后

  根据一的基础,下面,我们来实现本文的难题:在任何时候,如何让新表插入到最后?

  使用如下代码即可:

  ActiveWorkbook.Sheets.Add after:=Worksheets(Worksheets.Count)

  代码解释,after参数的含义是,在某某表的后面插入新表。Worksheets.Count的含义是,所有表的总数;

  现在,完整的看这行代码:

  ActiveWorkbook.Sheets.Add after:=Worksheets(Worksheets.Count)

  其含义是,在当前所有表的总数(也就是最后一个表拉,因为最后一个表的序号刚好就是所有表的总数)的后面插入新表。

  三、其它类似的代码

  A:ActiveWorkbook.Sheets.Add.Name = "工作表名称";插入一个给定名称的工作表;

  B:ActiveWorkbook.Sheets.Add.Name = Format(Date, "yy-mm-dd");插入一个以年-月-日为名称的工作表;

  C:ActiveWorkbook.Sheets.Add before:=Worksheets("Sheet1");在Sheet1之前插入一个工作表;

  D:综合运行的代码

  ActiveWorkbook.Sheets.Add Before:=Worksheets("Sheet6")

  ActiveSheet.Name = "我是刚插入的"

  以上两行代码的功能是,指定新插入表出现在Sheet6的前面,并且,指定要使用我是刚插入的为表的名称。


该杂文来自: Excel杂文

上一篇:将EXCEL的选择范围粘贴成为图片的VBA代码

下一篇:VBA打印工作薄、打印工作表的参数及代码

网站备案号:

网站备案号:滇ICP备11001339号-7

版权属性:

Copyright 2007-2021-forever Inc. all Rights Reserved.

联系方式:

Email:dzwebs@126.com QQ:83539231 访问统计