如何避免可怕的'选择','复制'和在这个例子中'粘贴'?

时间:2014-03-10 17:49:00

标签: excel-vba vba excel

这有效,但我知道它是邪恶的:

EIRPLLs.Select
Range(Cells(1, RevCol - 2), Cells(lastRevRow, RevCol + 3)).Copy
EIRPCases.Select
[A1:F1].Select
ActiveSheet.Paste
Selection.PasteSpecial Paste:=xlPasteValues

下面的内容是等效的,但是对象'_Worksheet'的方法'范围'导致失败:

EIRPCases.Columns("A:F") = EIRPLLs.Range(Cells(1, RevCol - 2), Cells(lastRevRow, RevCol + 3)).Value

这也失败了:

EIRPCases.Range(Cells(1, 1), Cells(lastRevRow, 6)) = EIRPLLs.Range(Cells(1, RevCol - 2), Cells(lastRevRow, RevCol + 3)).Value

正确的实施是什么?

1 个答案:

答案 0 :(得分:3)

我会这样做:

With EIRPLLs.Cells(1, RevCol - 2).Resize(lastRevRow, 6)
    EIRPCases.Range("A1").Resize(.Rows.Count, .Columns.Count).Value = .Value
End With