首页 > 解决方案 > 获取对象_worksheet的运行时错误1004方法粘贴失败

问题描述

获取运行时错误 1004 对象 _worksheet 的方法粘贴失败,以下代码请帮助,在此先感谢。

Sub Move()
    Dim lastrow As Long, erow As Long

    lastrow = Sheet1.Cells(Rows.Count, 1).End(xlUp).Row
    For i = 1 To lastrow
        Sheet1.Cells(i, 1).Copy
        erow = Sheet2.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row

        Sheet1.Paste Destination = Worksheets("Sheet2").Cells(erow, 1)

        Sheet1.Cells(i, 2).Copy
        Sheet1.Paste Destination = Worksheets("Sheet2").Cells(erow, 2)

        Sheet1.Cells(i, 3).Copy
        Sheet1.Paste Destination = Worksheets("Sheet2").Cells(erow, 3)
    Next i

    Application.CutCopyMode = False
    Sheet2.Columns().AutoFit`
    Range("A1").Select
End Sub

标签: excelvba

解决方案


移动一些东西并在一行中完成整个操作:

Sub Move()
    Dim lastrow As Long, erow As Long

    lastrow = Sheet1.Cells(Rows.Count, 1).End(xlUp).Row
    erow = Sheet2.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
    Sheet1.Range(Sheet1.Cells(1, 1),Sheet1.Cells(lastrow , 3)).Copy Sheet2.Cells(erow, 1)

    Application.CutCopyMode = False
    Sheet2.Columns().AutoFit
    Range("A1").Select
End Sub

现在,如果这不起作用,则代码名称可能不正确,应该分别用and替换所有Sheet1and 。Sheet2Worksheets("Sheet1")Worksheets("Sheet2")


推荐阅读