没有选择从一页切换到另一页

时间:2016-05-17 16:04:27

标签: excel vba excel-vba

我正在尝试从一个工作表复制到另一个工作表,而.End属性应该使用Range值,但错误说它不是!开发人员文档没有帮助,所以我不知道该怎么做。

下面的代码,.End(xlup)正在抛出错误。

  Dim inputcells As Range

Sheets(1).Range("B8:F8").Cut


With Worksheets(2).Range("C1000")
    .End (xlUp)
    .Offset(1, 0).PasteSpecial xlPasteValues

End With

2 个答案:

答案 0 :(得分:2)

这样做,

Sheets(1).Range("B8:F8").Cut Destination:=Sheets(2).Cells(Sheets(2).Rows.Count, "C").End(xlUp).Offset(1)

如果您尝试使用“剪切”粘贴特殊值,它将无效,您只能使用“复制”粘贴特殊

解决这个问题的一种方法是设置范围,然后使范围等于另一个范围。

Sub Button1_Click()
    Dim sh1 As Worksheet
    Dim sh2 As Worksheet
    Dim CrNg As Range
    Dim LstRw As Long
    Dim PrNg As Range

    Set sh1 = Sheets(1)
    Set sh2 = Sheets(2)
    Set CrNg = sh1.Range("B8:F8")

    With sh2
        LstRw = .Cells(.Rows.Count, "C").End(xlUp).Row + 1
        Set PrNg = .Range(.Cells(LstRw, "C"), (.Cells(LstRw, "G")))
    End With

    PrNg.Value = CrNg.Value

End Sub

如果需要,您可以在结尾处清除CrNg

答案 1 :(得分:1)

使用Copy而不是Cut

Sub ljsh()
    Sheets(1).Range("B8:F8").Copy
    Sheets(2).Range("C1000").End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
End Sub