将所选单元格的行移动到另一个工作表无法正常工作

时间:2017-03-20 15:03:43

标签: excel vba excel-vba

我有一个Excel文件,我在其中添加了一些带有一点形式的行。到现在为止还挺好。现在我尝试用宏移动(选择,剪切,粘贴其他工作表并在之前删除)。它第一次工作正常,但是当我第二次尝试这样做时,它不再工作了。它仍然会从第一个工作表中删除数据,但会在第二个工作表上覆盖它。 那是我的代码:

Sub moveToDone()
'
' moveToDone Makro
'
' Tastenkombination: Strg+m
'
    ActiveCell.EntireRow.Select
    Selection.Cut
    Sheets("erledigt").Select
    Range("A5").Select
    ActiveSheet.Paste
    Range("C8").Select
    Sheets("Planung").Select
    Dim unusedRow As Long
    unusedRow = Cells.SpecialCells(xlCellTypeLastCell).Offset(1, 0).Row
    Selection.Delete Shift:=xlUp
End Sub

正如你所看到的,我从所选单元格中获取行,然后我将其剪切,切换到名为" erledigt"的第二个工作表。并将其粘贴在第一个空行上。然后我在第一个上删除它。 但正如我所说。它第一次工作正常,但它只是覆盖了前一个。

1 个答案:

答案 0 :(得分:1)

您的问题由@ A.S.H

修复

但我认为不需要删除源行,.Cut这样做 你可以避免在这里使用.Select

 With Sheets("erledigt")
    ActiveCell.EntireRow.Cut .Range("A" & .Range("A" & .Rows.Count).End(xlUp).Row + 1)
 End With