表操作

2019-06-27  本文已影响0人  A_rrow

选择表 -- select

Sheets(2).select
Sheets("2月").Select
Sheet2.select
注意前两种写法sheet都带s

单元格及表的操作

在单元格中输入指定的值
Sheet2.range(“a1”) = 100
统计表的数量 并返回到a1
Range(“a1”) = Sheets.count
在最后的位置上插入一张新表
Sheets.Add after:=Sheets(Sheets.Count)
在指定位置插入新表将Sheets.Count改成对应的表名即可
表命名
Sheets(1).Name = "10"
Sheets("表名").Name = "10"
Sheet1.Name = “10”

新建5张表,并分别命名为1月、2月....

Dim j As Integer
For j = 1 To 5
   Sheets.Add after:=Sheets(Sheets.Count)
   Sheets(Sheets.Count).Name = j & "月份"
Next

新建100张表

Sheets.Add Count:=100

依次取表名

Dim i As Integer
For i = 1 To Sheets.Count
此处不能用 i+1 是因为下标会发生错误超出表的个数
   Range("a" & i) = Sheets(i).Name
Next

往最后的位置复制表1

Sheet1.Copy after := Sheets(Sheets.Count)

删除表

# 删除第一张表
Sheet1.delete

去除表删除时发出的警告

excel.Application.DisplayAlerts = False

记得最后要打开警告

excel.Application.DisplayAlerts = True

删除100张表

Dim i As Integer
For i = 1 To 10   # 注意循环的次数,不能大于当前表
   Excel.Application.DisplayAlerts = False
   Sheets(1).Delete
   Next
   Excel.Application.DisplayAlerts = True

表的复制

复制表1到表3的后面

Sheet1.copy after : = Sheet3

复制到当前表后

sheet1.copy after : = Sheets(Sheets.count)

习题


补充完整专业代号和称呼,并将名字为空的行删除

Sub test()
Dim i As Integer
Dim j As Integer

For j = 1 To Sheets.Count
    For i = 100 To 2 Step -1
        If Sheets(j).Range("e" & i) = "男" Then
            Sheets(j).Range("f" & i) = "先生"
        Else
            Sheets(j).Range("f" & i) = "女士"
        End If
        
        If Sheets(j).Range("b" & i) = "理工" Then
            Sheets(j).Range("c" & i) = "LG"
        ElseIf Sheets(j).Range("b" & i) = "文科" Then
            Sheets(j).Range("c" & i) = "WK"
        Else
            Sheets(j).Range("c" & i) = "CJ"
        End If
        
        If Sheets(j).Range("d" & i) = "" Then
            Sheets(j).Range("d" & i).EntireRow.Delete
        End If
    Next

Next

End Sub
上一篇 下一篇

猜你喜欢

热点阅读