2016-08-09 34 views
0

我有一个Excel 2013工作簿。Excel VBA - 已激活工作表上的下一行错误

我被利用该SO Answer for Copy and find next blank Row

我的代码是

Sub Save() 
    Dim NextRow As Range 
    Set CopyZone = Worksheets("Sheet1").Range("A2:AO289") 
    Set ToDataSheet = Worksheets("_data") 
    Set NextRow = Range("B" & ToDataSheet.UsedRange.Rows.Count + 1) 
    CopyZone.Cut 
    ToDataSheet.Activate 
    NextRow.PasteSpecial Paste:=xlValues, Transpose:=False 
    Application.CutCopyMode = False 
    Set NextRow = Nothing 
End Sub 

Copyzone是从具有新格式化数据我的第一片材​​的输出。我将DataSheet设置为我的数据表(“_data”),但它进入线上的调试。

NextRow.PasteSpecial Paste:=xlValues, Transpose:=False 

我如何得到它完成切割数据,粘贴到到纸张上的一个空白行?

+0

什么错误是VBE的表现? –

+0

没有停止并突出显示该行没有错误。我发现它与使用复制作品的剪裁功能是特定的。 – sayth

+0

从你的代码我推断,你的子开始活动工作表不是“_data”,如果是这样,当你设置NextRow它不会在“_data”,因为你没有指定工作表。它应该是'SetNextRow = ToDataSheet.Range(“B”&ToDataSheet.UsedRange.Rows.Count + 1)' –

回答

3

希望下面的代码解决您的问题

Sub Save() 
    Set CopyZone = Worksheets("Sheet1").Range("A2:AO289") 
    Set ToDataSheet = Worksheets("_data") 
    CopyZone.Cut Destination:=ToDataSheet.Range("B" & ToDataSheet.UsedRange.Rows.Count + 1) 
End Sub 
+0

完美简单和甜美。 – sayth

+0

谢谢sayth您的意见。 –

相关问题