在Excel中使用VBA,如何通过列循环并根据单元格值创建新的床单



i在表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

这不起作用,我在网上发现的示例对我的需要太复杂了。我希望有一个简单的解决方案指出我做错了什么。谢谢

这会添加工作表并根据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

最新更新