精华内容
下载资源
问答
  • 新增工作表 指定名字,位置等等 Sub 指定位置插入指定名的sheet() Dim wb As Workbook Dim sh As Worksheet Set wb = ThisWorkbook Rem Sheets.Add(before:=Sheets("e_1"), after:=Sheets("e_2"))....

    新增工作表

    指定名字,位置等等

     

     

     

    Sub 指定位置插入指定名的sheet()

     

    Dim wb As Workbook

    Dim sh As Worksheet

     

    Set wb = ThisWorkbook

    Rem Sheets.Add(before:=Sheets("e_1"), after:=Sheets("e_2")).Name = "newsheet"

    Rem before after没成功同时生效过,数量,type?  参数之间用, ???

     

    Sheets.Add(after:=Sheets("e_2")).Name = "newsheet"

    End Sub

     

     

    然后,多个sheet呢

     

    Sub 加一批表()

    Dim arr1

     

    arr1 = Array("a", "b", "c", "d")  'arr1()=这样不行?

     

    For i = 0 To UBound(arr1)

        Sheets.Add

        ActiveSheet.Name = arr1(i)

        Rem ActiveSheet.Close   '不支持 activesheet.close? 也不用关?

       

    Next

       

    End Sub

     

     

     

     

    Sub 加一批表()

    Dim arr1

     

    arr1 = Array("a", "b", "c", "d")  'arr1()=这样不行?

    arr2 = Sheets("e_1").Range("a1:a3")   '数组应该不是对象,赋值不用set

     

     

     

    For i = 0 To UBound(arr1)

        Sheets.Add

        ActiveSheet.Name = arr1(i)

        Rem ActiveSheet.Close   '不支持 activesheet.close? 也不用关?

       

    Next

       

    Rem 二维数组,记住 x y 坐标系分别是 row column

    For j = 1 To UBound(arr2, 1)   '这里是从EXCEL二维表里取的数组,index不能为0开始

        Sheets.Add

        ActiveSheet.Name = arr2(j, 1) '记得这是从二维数组里取数。二维数组其实就是EXCEL表。

    Next j

       

       

    End Sub

     

     

     

    11111111111

     

    Sheets.Add(Before:=Sheets(1)).Name = "DataSheet4"

    展开全文
  • VBA添加工作表详解

    万次阅读 2018-02-28 00:43:32
     VBA添加工作表的代码看起来确实很简单。Sheets.Add 语法格式也很简单,前两个参数用于指定工作表插入的位置,第3个参数指定插入的工作表的数量,第4个参数指定插入的工作表的类型,MSDN帮助中的解释也...

            看到这个题目,很多人可能会说:添加工作表需要解释吗?连VBA小白都会用呀!没错,大家可能经常用到,但是大家是否都知道下面的用法呢,可能还真不一定呦!

            VBA添加工作表的代码看起来确实很简单。

    Sheets.Add

            语法格式也很简单,前两个参数用于指定工作表插入的位置,第3个参数指定插入的工作表的数量,第4个参数指定插入的工作表的类型,MSDN帮助中的解释也就这么多。

    表达式 . Add( Before, After, Count, Type )

            插入工作表时,Excel会以“Sheetx”(x为数字)的形式顺次进行编号,一般用户都会希望工作表的名称有含义的,所以就需要“插入指定名称的工作表”,这个需要似乎也不难呀!

        Sheets.Add
        ActiveSheet.Name = "DataSheet1"

            完美实现,能否在一行代码中实现呢?挠挠头,想一想,可以呀!

        Sheets.Add: ActiveSheet.Name = "DataSheet2"

            这好像也是一行代码,但是只能说是“伪一行”,其实不过是两句代码的另一种书写形式。

            这个问题的正解是:

        Sheets.Add.Name = "DataSheet3"

            What!?还可以这么用,VBA帮助文件都没有给出这种示例呀,工作表对象除了Name还有很多其他属性,比如CodeName,是否可以照葫芦画瓢来用。

        Sheets.Add.CodeName = "DataSheet30"

            运行时错误"450"跳了出来,CodeName是只读属性,不可以这样用。

            Sheets.Add.Name的书写方式不错,但是大家对Excel默认将工作表插入位置不满意(默认位置为活动工作表之前),是否只能插入之后再调整位置呢?其实再继续扩展这个代码。

    Sheets.Add(Before:=Sheets(1)).Name = "DataSheet4"
            指定位置指定名称插入工作表就这么简单!
    展开全文
  • SUB 批量增加命名工作表() For L = 1 To 100 Sheets.Add(, Sheets("发票表头")).Name = "发票表" & i NEXT END SUB SUB 批量删除工作表() Application.DisplayAlerts = 0 ‘’‘关闭提示 On Error Resume ...
    SUB 批量增加命名工作表()
     For L = 1 To 100
    Sheets.Add(, Sheets("发票表头")).Name = "发票表" & i
    NEXT
    
    END SUB
    
    SUB 批量删除工作表()
    Application.DisplayAlerts = 0  ‘’‘关闭提示
    On Error Resume Next
    X = Worksheets.Count
    For i = 1 To X 
    
    Worksheets("发票表" & i).Delete
    Next
    Application.DisplayAlerts = 1
    MsgBox ("完成" & X - 3 & "个工作表删除!")
    end SUB
    
    展开全文
  • 根据sheet1所列名称,添加并重命名新的工作表。 二、实现 1.按照从前往后的顺序 Sub cre_ren_sheets() Dim num% /* 定义为integer*/ num = Application.WorksheetFunction.CountA(Sheet1.Range("A:A")) /* num...
    一、需求

    根据sheet1所列名称,添加并重命名新的工作表。
    在这里插入图片描述

    二、实现
    1.按照从前往后的顺序
    Sub cre_ren_sheets()
    	Dim num% 
    	/* 定义为integer*/
    	num = Application.WorksheetFunction.CountA(Sheet1.Range("A:A"))
    	/* num是非空单元格数*/
    	
    	For i = 1 To num
    	    Sheets.Add after:=ActiveSheet
    	    Sheets(i + 1).Select
    	    Sheets(i + 1).Name = Sheet1.Cells(i, 1)
    	Next i
    End Sub
    

    在这里插入图片描述

    2.按照从后往前的顺序
    Sub cre_ren_sheets()
    	Dim num%
    	num = Application.WorksheetFunction.CountA(Sheet1.Range("A:A"))
    	
    	For i = 1 To num
    	    Sheets.Add
    	    Sheets(1).Name = Sheet1.Cells(i, 1)
    	    /* Sheet1=Sheets(i+1), sheet1随着新工作表的建立被往后挤,序列数随之增大*/
    	Next i
    End Sub
    
    

    在这里插入图片描述

    三、注意事项
    1.代码中的索引号和新建sheet默认命名不一定一致,代码按照顺序,工作簿只是名称。

    在这里插入图片描述

    2.工作表的命名要求

    在这里插入图片描述

    展开全文
  • VBA添加Excel工作表

    2019-11-25 00:04:30
    VBA添加工作表的代码看起来确实很简单。 Worksheets.Add 语法格式也很简单,前两个参数用于指定工作表插入的位置,第3个参数指定插入的工作表的数量,第4个参数指定插入的工作表的类型,MSDN帮助中...
  • 正如@cyboashu所说,只需复制工作表,它将复制所有公式和格式 . 此时,仍然可以对单个工作表进行任何其他更改 . 它们不是链接副本 .这是一个快速而脏的宏,用于将工作表(1)复制到工作簿的末尾并重命名 . 如果需要...
  • Sub 新增工作表_遍历现有所有工作表_用于核实首列数据_无视隐藏工作表() Dim i As Integer '新增工作表,并移动到第一个位置,用于写入核实首列数据 Worksheets.Add.name = "核实首列" Worksheets("核实首列")....
  • VBA批量增加工作表

    2019-01-14 09:23:00
    Sub 批量增加工作表() Dim i As Integer For i = 1 To 10 '每次都在最后一张表后面增加 Worksheets.Add after:=Sheets(Worksheets.Count), Count:=1 ActiveSheet.Name = Sheet1.Range("a" & i).Text ...
  • "月" '将新增工作表的名字改成m月 Next End Sub *********************************************** 实例应用2:批量删除月份工作表 Sub 删除1到12月份的工作表() Application.DisplayAlerts = False '屏蔽删除工作...
  • sub 批量新建指定名称的工作表() Dim i As Integer For i = 2 To 10 '根据实际情况修改i大小 Worksheets.Add after:=Worksheets(ThisWorkbook.Worksheets.Count) ActiveSheet.Name = Sheets(1).Cells(1, i) ...
  • VBA之操作工作表

    2020-03-25 22:14:06
    1.选中工作表的三种方式 Sub test() Sheet1.Select Sheets(1).Select Sheets(“1月”).Select End Sub 上面三种都是选中第一个工作表 其中第1个指的是第一个sheet,第2个是索引,可以在括号里改值,第3个工作表名为"1月...
  • 使用VBA工作表中快速插入行

    万次阅读 2018-07-27 05:17:00
    工作表中插入行,有需要用到代码吗?是不是杀鸡用牛刀的感觉。其实不是这样的,在很多复杂的应用场景中,插入行不再是简单的单击鼠标右键就可以即刻完成的。比如需要隔行插入空行,如果有一万行数据,是不是搞到手...
  • 目录 示例 实现代码 工作表对象(Worksheet)及其表示方法 1.序号表示法 2.工作表名称表示法 ...现希望按照模板的格式生成若干张工作表,各工作表以银行名称作为表格名称,并将该银行信息填入表内。如何用V...
  • VBA 工作表 worksheet.add 方法

    千次阅读 2020-01-31 10:36:01
    1 工作表 sheet的添加 worksheets.add 或 sheets.add 1.1 基本语法 Sheets.Add 方法 新建工作表、图表或宏表。新建的工作表将成为活动工作表。 语法 表达式.Add(Before, After, Count, Type) 表达式 一个代表 ...
  • 本章主要内容:Worksheets工作表对象,Application主程序对象,小结及练习。
  • I am new to VBA coding. I want to populate an excel sheet with different data. The requirement is to pull data into separate sheets of the same Excel. I need to use the same type of code below to main...
  • EXCEL VBA创建sheet/工作簿

    万次阅读 2019-05-29 11:02:34
    For Each sht In mybook.Sheets ' FOR 循环实现将工作簿中的多个工作表拆开成以工作表名称命名的工作簿并保存在原工作簿相同的路径中 sht.Copy ActiveWorkbook.SaveAs Filename:=mybook.Path & "\" & sht....
  • Excel中VBA合并工作表

    千次阅读 2021-12-29 10:34:39
    合并送货单数据 Dim k% Dim sh As Worksheet On Error Resume Next Application.... ".xlsx" '工作簿路径 Set Wb = Workbooks.Open(MP) '清空数据 last_row_clear = ThisWorkbook.Sheets("送货单").Cel
  • 在前面的进行WPS的安装率的统计中,使用两个FOR循环进行安装率的统计... 得到中的行数也不需要录入,直接取值就行了。  比如: Set srcSheet = Sheets(1) '第一个sheet Set destSheet = Sheets(3) '第三个shee
  • Sub 新增工作表_核实工作簿中所有工作表表头是否一致() Dim sht As Worksheet, i As Integer i = 1 Sheets.Add.Name = "表头核实" For Each sht In ThisWorkbook.Worksheets sht.Rows(1).Copy Worksheets("表头...
  • 问题描述:若干个工作簿,每个工作簿里有一个工作表,如何利用VBA把若干工作簿里的表保存到一个新建的工作簿里,并单独成表?
  • VBA根据A列数据批量建立工作表的代码如下: Sub NewSht() 'ExcelHome VBA编程实践与学习 Dim Sht As Worksheet, Rng As Range Dim Sn, t$ Set Rng = Range("a2:a" & Cells(Rows.Co...
  • 第4行代码即:从第1个工作表开始,一直到第30个分工作表,单元格A2的值从1递增到30. 第5行代码即:从第2个工作表开始,一直到第31个分工作表,K2到K10区域单元格的值从1递增到30. 第6行代码即:从第2个工作表开始,...
  • 在我们日常生活中,时时用到合并多个工作簿为一个工作表,这里利用VBA简单实现。希望对大家有点用
  • Excel工作表事件(1)

    千次阅读 2020-02-27 14:48:59
    Excel可以监视多种不同类型的事件,例如Excel中的工作表、工作簿、应用程序、图表工作表、透视表和控件等对象都可以响应事件,而且每个对象都有多种相关的事件。 事件过程作为一种特殊的Sub过程,在满足特定条件时被...
  • 将数据库表的内容读到工作表中,这儿就不说了,本文主要是要说一下如何将工作表中修改后的内容更新到数据库表中。 比较快速的方法是采用记录集更新方法,这种方法比较快,也很方便。经测试,对access数据库是没有...
  • VBA-新建工作簿

    2020-02-26 12:09:43
    和创建工作表类似,创建工作簿仍然使用add方法。下面是一个较为完整的创建例子: Sub addnewbook() Dim i As Integer Dim shtname As Variant Dim newbook As Workbook Dim arr As Variant ...
  • 1、获取工作表数量及选中、激活工作表 Private Sub test()  Dim count As Integer  count = Worksheets.count '获取工作表数量  Dim name As String  name = Worksheets(1).name '获取第一个工作表名称 ...
  • 使用Worksheets集合或Sheets集合的Add方法可以实现在指定位置添加新工作表,并且添加后的新工作表自动为活动工作表。 Sub 插入新工作表并改名() With Worksheets .Add after:=Worksheets(Worksheets.Count) ...
  • Sub AddShtAndCodes() Dim NewSht As Worksheet, MyCodes As String Set NewSht = Worksheets.Add NewSht.Name = "test" MyCodes = "Private Sub Worksheet_Activate()" & vbCrLf & "Msgbox ""test""...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,141
精华内容 456
关键字:

vba新增工作表