xlPastevalues给了我一个对象定义的错误VBA
晚上好,粘贴值部分给了我一个对象定义的错误,我不知道为什么要进行测试以确保有可见的单元格可从中复制:xlPastevalues给了我一个对象定义的错误VBA,vba,excel,Vba,Excel,晚上好,粘贴值部分给了我一个对象定义的错误,我不知道为什么要进行测试以确保有可见的单元格可从中复制: Sub foo() Dim ws As Worksheet: Set ws = Sheets("inbd") Dim wsDestination As Worksheet: Set wsDestination = Sheets("test") LastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row ws.Range("A1:N" &a
Sub foo()
Dim ws As Worksheet: Set ws = Sheets("inbd")
Dim wsDestination As Worksheet: Set wsDestination = Sheets("test")
LastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
ws.Range("A1:N" & LastRow).AutoFilter Field:=1,
Criteria1:=Worksheets("test").Cells(1, 26).Value
ws.Range("f2:f" & LastRow).SpecialCells(xlCellTypeVisible).Copy Range("C6")
DestinationRow = wsDestination.Cells(wsDestination.Rows.Count, "C").End(xlUp).Row + 1
wsDestination.Range("C" & DestinationRow).PasteSpecial xlPasteValues
Application.CutCopyMode = False
ws.Range("A1:N" & LastRow).AutoFilter Field:=1
End Sub
。有多个单元格用于过滤器的测试
If Application.WorksheetFunction.Countif(ws.Range("A1:N" & LastRow),Worksheets("test").Cells(1, 26).Value) > 0
您也已经粘贴了这一行:
If LastRow > 1
您已粘贴到C6,现在剪贴板为空,因此无法再次粘贴
也许你想要:
ws.Range("F2:F" & LastRow).SpecialCells(xlCellTypeVisible).Copy Range("C6")
您已经将复制的单元格粘贴到inbd表C6中 你的代码没有多大意义。在筛选、复制和粘贴数据之前,确定最后一行数据,然后再次粘贴。我建议你先过滤,然后确定两张纸上的最后一行,然后在没有错误的粘贴到C6步骤的情况下一个接一个地进行复制和粘贴
ws.Range("F2:F" & LastRow).SpecialCells(xlCellTypeVisible).Copy
DestinationRow = wsDestination.Cells(wsDestination.Rows.Count, "C").End(xlUp).Row + 1
wsDestination.Range("C" & DestinationRow).PasteSpecial xlPasteValues