2012-07-11 25 views
0

我是VBA新手,所以我可能會問一些基本的東西 - 對不起! 我有一張工作表,其中包含一系列記錄,我想將它們放入名爲「July Archive」的不同工作表中。我使用這段代碼,我知道這將覆蓋「July Archive」中的目標單元格。但是我收到一個錯誤,提示pasteValue操作失敗。將數據粘貼到新工作表中

另外,如何追加單元而不是覆蓋。我嘗試了PasteAppend,但得到一個錯誤說它不支持該對象。

Sub Selectweeklyreport() 

    ActiveSheet.Range("a16", ActiveSheet.Range("f16").End(xlDown)).Cut 
    ActiveSheet.Goto ("July Archive") 
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _ 
    False, Transpose:=False 

End Sub 

回答

1

是這樣的?

Sub Selectweeklyreport() 
    Dim wsI As Worksheet, wsO As Worksheet 
    Dim lRow As Long 

    '~~> Replace this with the relevant sheet name 
    Set wsI = Sheets("Sheet1") 
    Set wsO = Sheets("July Archive") 

    With wsI 
     '~~> Get the last Row in Sheet1 
     lRow = .Range("F" & .Rows.Count).End(xlUp).Row 

     '~~> Copy the range from Sheet1 
     .Range("A16:F" & lRow).Copy 'and not .Cut???? 

     '~~> Get the next available row in July Archive 
     lRow = wsO.Range("A" & wsO.Rows.Count).End(xlUp).Row + 1 

     '~~> Paste Special Values 
     wsO.Range("A" & lRow).PasteSpecial Paste:=xlValues, _ 
     Operation:=xlNone, SkipBlanks:=False, Transpose:=False 
    End With 
End Sub 
相關問題