我在工作表1中有一个包含不同值的列。我想遍历该列,并使用与值对应的工作表名称创建新工作表。每次创建工作表时,我都希望将新工作表设置为活动状态并在该工作表上执行一些任务。
Sub test()
i = 4 'starting row in sheet 1
While Not IsEmpty(Cells(i, 1))
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets.Add
ws.Name = Cells(i, 1).Value
'do something to new sheet
i = i + 1
Wend
End Sub
这不起作用,我在网上找到的示例太复杂了,无法满足我的需求。我希望有一个简单的解决方案,指出我做错了什么。谢谢
答案 0 :(得分:0)
这将添加工作表并按照A4中的值向下命名它们:
Dim wks As Worksheet
Dim wksNew As Worksheet
Dim rngCell As Range
Set wks = Sheets("Sheet1")
Set rngCell = wks.Range("A4")
While Not IsEmpty(rngCell)
Set wksNew = ActiveWorkbook.Worksheets.Add(After:=Sheets(Sheets.Count))
wksNew.Name = rngCell.Value
'do stuff with wksNew
Set rngCell = rngCell.Offset(1)
Wend