将Excel电子表格中的行复制到新电子表格的次数等于L列中的值的次数

将Excel电子表格中的行复制到新电子表格的次数等于L列中的值的次数,excel,vbscript,Excel,Vbscript,我有一个Excel电子表格,里面有抽奖信息 每行都有一位购票者的信息 问题是,我需要制作一个新的电子表格(最终,我需要将其邮件合并到标签中),每张票有一行,但是如果一个人买了两张票,他们的信息在原始电子表格中只在一行,票的数量在“L”列中 所以我需要一个宏来查看L列中的值,并将该行复制到新的电子表格中L次-如果他们购买了1张票,L列中的值为1,它将复制1次,如果他们购买了3张票,L列中的值为3,它将复制3次 有人能告诉我怎么做吗 如果在邮件合并过程中有办法做到这一点,那应该行得通2,我只是觉得先

我有一个Excel电子表格,里面有抽奖信息

每行都有一位购票者的信息

问题是,我需要制作一个新的电子表格(最终,我需要将其邮件合并到标签中),每张票有一行,但是如果一个人买了两张票,他们的信息在原始电子表格中只在一行,票的数量在“L”列中

所以我需要一个宏来查看L列中的值,并将该行复制到新的电子表格中L次-如果他们购买了1张票,L列中的值为1,它将复制1次,如果他们购买了3张票,L列中的值为3,它将复制3次

有人能告诉我怎么做吗

如果在邮件合并过程中有办法做到这一点,那应该行得通2,我只是觉得先制作一个新的电子表格,然后从新的表格中制作标签更容易


谢谢

我最终在一个网站上找到了一些代码,并根据自己的需要对其进行了修改。 这就是我正在使用的:

Sub MakeTickets()
Dim X As Long, Z As Long, Qty As Long, Rw As Long
Dim StartRow As Long, LastRow As Long
Dim Source As String, Destination As String
'Define the variables below
StartRow = 2 'the row to start from in the source sheet
FirstDestination = 1 'the row to start from in the destination sheet
FirstCell = "A" 'the first column in each row that you want to copy
LastCell = "O" 'the last column in each row that you want to copy
Source = "Sold" 'source sheet name
Destination = "Tickets" ' destination sheet name
QtyClmn = "L" 'column to get the quantity from
'Until here
Rw = FirstDestination
With Worksheets(Source)
LastRow = .Cells(.Rows.Count, FirstCell).End(xlUp).Row
For X = StartRow To LastRow
Qty = Cells(X, QtyClmn).Value
For Z = 1 To Qty
Rw = Rw + 1
Worksheets(Destination).Range(FirstCell & Rw & ":" & LastCell & Rw).Value = .Range(FirstCell & X & ":" & LastCell & X).Value
Next
Next
End With
End Sub