Excel VBA:根据单元格值插入n张床单数量



我是Excel VBA的新手。我想根据单元格值插入数量的单元格。

我有Sheet1,我想将B4用作要插入的纸牌数(这是模板(的参考。

示例,如果b4 = 4的值,我想将模板表复制4次。

我该如何在VBA中做到这一点?

谢谢。:(

没有魔术,在循环中逐个创建它们,将每个新的魔术放在末尾。编辑:您还希望将它们重命名1、2、3、4,.. so:

Sub CreateSheets()
    Dim i As Long
    With ThisWorkbook.Sheets
      For i = 1 To Sheet1.Range("B4").Value2
        .Item("Template").Copy After:=.Item(.Count)
        .Item(.Count).Name = i
      Next
    End With
End Sub

或类似的东西...

Sub CopyTemplate()
Dim ws As Worksheet, wsTemplate As Worksheet
Dim n As Integer, i As Long
Application.ScreenUpdating = False
Set ws = Sheets("Sheet1")
Set wsTemplate = Sheets("Template")     'Where Template is the name of Template Sheet, change it as required.
n = ws.Range("B4").Value
If n > 0 Then
    For i = 1 To n
        wsTemplate.Copy after:=Sheets(Sheets.Count)
        ActiveSheet.Name = i
    Next i
End If
Application.ScreenUpdating = True
End Sub

类似的东西应该有效:

Sub copySheets()
Dim i As integer
Dim n As integer 'the amount of sheets
n = Cells(4, 2).Value 'b4
For i = 2 To n
    If ActiveWorkbooks.Worksheets.Count < n Then 'Makes sure the sheets exists
        Dim ws As Worksheet
        Set ws = ThisWorkbook.Sheets.Add(After:= _
             ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))
    End If
    ws1.Copy ThisWorkbook.Sheets(Sheets.Count) 'copy data
Next i
End Sub

最新更新