复制Excel范围时出现错误9“超出范围”

时间:2019-10-28 10:49:32

标签: excel vba

我试图在单击按钮后将数据从一个工作簿复制到另一个工作簿,但是功能范围不起作用并且总是返回

  

错误9“超出范围”。

Sub Button1_Click()

Application.ScreenUpdating = False
Application.DisplayAlerts = False

Workbooks.Open "C:\Users\Username\Desktop\Allineamento\Data\MasterData.xlsx"

Workbooks("MasterData").Sheets(2).range(Cells(13, 2), Cells(800, 16)).Copy
Workbooks("ImportSheets").Sheets("Master Data").Cells(2, 1).PasteSpecial Paste.Value

Workbooks("MasterData").Close

Application.ScreenUpdating = True
Application.DisplayAlerts = True

End Sub

1 个答案:

答案 0 :(得分:1)

宏记录器具有基本的Excel功能,非常有用。这是通过复制和粘贴一些excel范围生成的代码:

Sub Macro1()
    Range("A1:E8").Select
    Selection.Copy
    Selection.PasteSpecial xlPasteValues
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Range("L5").Select
    Application.WindowState = xlNormal
    Range("B7").Select
End Sub

尽管代码效率不高,但查看复制粘贴所需的代码非常有用-Range.PasteSpecial xlPasteValues

因此,在问题代码中,将PasteSpecial Paste.Value替换为PasteSpecial xlPasteValues