我从2001年到2012年每隔四分之一年创建一个VBA工作表,代码如下:
For Y = 2001 To 2012
For M = 1 To 4 Step
s = Str(Y) & "_" & Str(M)
Sheets.Add.Name = s
Next M
Next Y
因此,我的工作簿中的工作表看起来像:2012_4,2012_3,2012_2,...,2001_2,2001_1(它们按顺序排列)。
在我的所有程序中,我都是通过他们的名字来处理这些表格。但是还有其他方式使用他们的订单吗?有“第一张”和“最后一张”吗?
谢谢!
答案 0 :(得分:2)
Sub testing()
Dim ws As Worksheet
Set ws = Worksheets("Sheet1")
Dim newWs As Worksheet
ws.Copy after:=Worksheets("Sheet1") ' you can use before:= or after:= a worksheet
Set newWs = ActiveSheet
newWs.Name = "Sheet1 Copy" ' renaming any sheet
End Sub
Sub loopingSheets()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
Debug.Print ws.Name
Next ws
End Sub