VBA复制可见单元格

时间:2016-03-28 18:39:51

标签: excel vba

我确定我在这里遗漏了一些简单但我有这段代码:

Sub Purge()
Dim wb As Workbook
Dim ws As Worksheet, ws2 As Worksheet
Dim lastRow As Long

Set wb = ThisWorkbook
Set ws = wb.Sheets(1)
Set ws2 = wb.Sheets(2)
lastRow = ws.Range("A" & Rows.Count).End(xlUp).Row
lastRow2 = ws2.Range("C" & Rows.Count).End(xlUp).Row
Set mrn = ws2.Range("C2:C" & lastRow2)

With wb
Sheets.Add After:=Sheets(Sheets.Count), Count:=mrn.Rows.Count
End With
For i = 1 To mrn.Rows.Count

ws.Range("A7").AutoFilter Field:=5, Criteria1:=(mrn.Cells(i, 1).Value), _
         Operator:=xlFilterValues
ws.Range("A3:X" & lastRow).Copy.SpecialCells (xlCellTypeVisible)
wb.Sheets(i + 2).PasteSpecial

Next i

End Sub

可见复制单元格类型的第二行到最后一行代码返回了一个必需的对象错误。我在该行中的所有内容似乎都被定义,所以我觉得我的行写得不正确。

简而言之,此代码根据表2中的行数创建新选项卡,然后过滤表1并复制可见单元格并将其粘贴到第一个新创建的选项卡中。

如果有人对复制可见细胞有任何建议(我从来没有真正理解它),我真的很感激。谢谢!

0 个答案:

没有答案
相关问题