我有一个问题,vba 中有一个很好的功能可以将特定列表复制到另一张表:
Sheets("Data").ListObjects("mail_list").DataBodyRange.Copy
Sheets("Email").Range("B2").PasteSpecial xlPasteValues
我想使用特定列表取决于单元格中的文本,如下所示:
Sub make_email()
Dim mail_list, subject As String
Dim i As Integer
i = 2
subject = Sheets("Form").Cells(7, 2).Text
Do While Sheets("Data").Cells(i, 4).Text <> ""
If subject = Sheets("Data").Cells(i, "AW") Then
mail_list = Cstr(Sheets("Data").Cells(i, "AW"))
Exit Do
End If
i = i + 1
Loop
Sheets("Data").ListObjects(mail_list).DataBodyRange.Copy
Sheets("Email").Range("B2").PasteSpecial xlPasteValues
End Sub
我认为 ListObjects 需要字符串来获取特定列表,但不,程序返回错误超出范围。如何通过 ListObjects 查看特定名称(如 .ListObjects(mail_list).DataBodyRange.Copy)并使其正常工作?