繁体   English   中英

在Excel中使用VBA,如何循环列并根据单元格值创建新工作表?

[英]Using VBA in Excel, how do I loop through a column and create new sheets based on cell values?

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM