我有一张工作表,允许用户粘贴数据,然后将其粘贴到工作簿中驱动数据透视表的隐藏工作表中。这是通过命令按钮完成的。
我的代码选择范围中的数据直到最后一行,然后将其粘贴到另一张工作表中没有数据的下一行。然后我尝试在上传完成后从上传表中删除数据。除了删除数据之外,一切都正常。不知道哪里出了问题。我也尝试过使用“剪切”而不是复制,但结果是一样的。如果能得到一些帮助,我将不胜感激。
Sub TestingPaste()
Application.ScreenUpdating = False
Dim lst As Long
Sheets("Upload Data").Range(Range("A2:N2"), Range("A2:N2").End(xlDown)).Copy
With Sheets("Test")
lst = .Range("A" & Rows.Count).End(xlUp).Row + 1
.Range("A" & lst).PasteSpecial xlPasteColumnWidths
.Range("A" & lst).PasteSpecial xlPasteValues
Sheets("Upload Data").Range(Range("A2:N2"), Range("A2:N2").End(xlDown)).Clear
End With
Application.ScreenUpdating = True
End Sub
答案1
谢谢大家。@BruceWayne,谢谢你的建议。我采纳了你的一些建议,但发现在子版块完成后,它会将用户留在“测试”表上。此后,我添加了将 Sheets("Upload Data").Select
用户返回到上传表的功能。以下是最终结果,供感兴趣的人参考。
Dim lst As Long
Sheets("Upload Data").Range(Range("A2:N2"), Range("A2:N2").End(xlDown)).Copy
With Sheets("Test")
lst = .Range("A" & Rows.Count).End(xlUp).Row + 1
.Range("A" & lst).PasteSpecial xlPasteColumnWidths
.Range("A" & lst).PasteSpecial xlPasteValues
Sheets("Upload Data").Range(Sheets("Upload Data").Range("A2:N2"), Sheets("Upload Data").Range("A2:N2").End(xlDown)).Clear
End With
Sheets("Upload Data").Select
Application.ScreenUpdating = True
End Sub