VBA基础之Excel 工作表(Sheet)的操作(二)
二、 Excel 工作表(Sheet)的操作
1. Excel 添加工作表(Sheet)
| 方法名 | 参数 | 参数值 | 说明 | 
|---|---|---|---|
| Add | Before | 工作表名称 | 在指定的工作表前面插入新的工作表 | 
| After | 工作表名称 | 在指定的工作表后插入新的工作表 | |
| Count | 数值 | 要添加的工作表数量 | |
| Type | 类型 | 
'在当前活跃工作表的前面插入一张新的工作表
Sub addSheet()
    Worksheets.Add
End Sub
 
'在工作表sheet2前面插入一张新的工作表
Sub addSheet()
    Worksheets.Add Before:=Worksheets("sheet2")
End Sub
 
'在工作表sheet2后面插入一张新的工作表
Sub addSheet()
    Worksheets.Add after:=Worksheets("sheet2")
End Sub
 
'在当前活跃工作表的前面插入两张新的工作表
Sub addSheet()
    Worksheets.Add Count:=2
End Sub
 
'在工作表sheet3后面插入两张新的工作表
Sub addSheet()
    Worksheets.Add after:=Worksheets("sheet3"), Count:=2
End Sub
2. Excel 修改工作表(Sheet)名称
Worksheets("工作表的旧名称").Name = "工作表的新名称"
Sub changeSheetName()
    '将工作表Sheet2的名称改为"工作表2"
    Worksheets("Sheet2").Name = "工作表2"
 
    '将当前活跃工作表的名称改为"工作表A"
    ActiveSheet.Name = "工作表A"
End Sub
3. Excel 移动工作表(Sheet)
| 方法名 | 参数 | 参数值 | 说明 | 
|---|---|---|---|
| Move | Before | 工作表名称 | 移动工作表到指定的工作表前面 | 
| After | 工作表名称 | 移动工作表到指定的工作表后面 | 
'把工作表Sheet1移动到Sheet2后面
Sub moveSheets()
    Worksheets("Sheet1").Move after:=Worksheets("Sheet2")
End Sub
 
'把当前活跃工作表移动到Sheet1前面
Sub moveSheets()
    ActiveSheet.Move before:=Worksheets("Sheet1")
End Sub
 
'把工作表Sheet2移动到所有工作表的最后
Sub moveSheetToLast()
    Dim sht As Object
    Dim TARGET_SHEET As Object
    Set TARGET_SHEET = Worksheets("Sheet2")
    For Each sht In ActiveWorkbook.Sheets
        If sht.Name <> TARGET_SHEET.Name Then
            TARGET_SHEET.Move after:=sht
        End If
    Next sht
End Sub
4. Excel 拷贝工作表(Sheet)
| 方法名 | 参数 | 参数值 | 说明 | 
|---|---|---|---|
| Copy | Before | 工作表名称 | 拷贝工作表到指定的工作表前面 | 
| After | 工作表名称 | 拷贝工作表到指定的工作表后面 | 
'把工作表Sheet1拷贝到Sheet2后面
Sub copySheets()
    Worksheets("Sheet1").Copy after:=Worksheets("Sheet2")
End Sub
 
'把当前活跃工作表拷贝到Sheet1前面
Sub copySheets()
    ActiveSheet.Copy before:=Worksheets("Sheet1")
End Sub
5. Excel 删除工作表(Sheet)名称
WorkSheets("工作表名").Delete
'删除当前活跃的工作表
Sub deleteActiveSheet()
    Application.DisplayAlerts = False
    ActiveSheet.Delete
    Application.DisplayAlerts = True
End Sub
 
'删除工作表Sheet2
Sub deleteSheet()
    Application.DisplayAlerts = False
    Worksheets("Sheet2").Delete
    Application.DisplayAlerts = True
End Sub
 
                    
                     
                    
                 
                    
                

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号