0

说明:我想要做的是允许用户通过浏览选择 excel 文件,然后将数据从 Sheet3 复制到所选文件中并粘贴到当前工作簿 Sheet2(名称为原始数据(步骤 1))。

我的问题是我得到:

运行时错误 1004 应用程序定义或对象定义错误

在这条线上ActiveSheet.Range("A2:3063").Copy

我的完整代码:

Private Sub OpenWorkBook_Click()

Dim myFile As Variant
Dim OpenBook As Workbook
Application.ScreenUpdating = False

myFile = Application.GetOpenFilename(Title:="Browse your file", FileFilter:="Excel Files(*.xls*),*xls*")

If myFile <> False Then
    Set OpenBook = Application.Workbooks.Open(myFile)
    OpenBook.Sheets(3).Activate
    ActiveSheet.Range("A2:3063").Copy
    ThisWorkbook.Worksheets("Raw data(STEP 1)").Range("A3").PasteSpecial xlPasteValues
    OpenBook.Close True
End If

Application.ScreenUpdating = True

End Sub
4

1 回答 1

3

您的范围地址无效。大概你的意思ActiveSheet.Range("A2:A3063")

您应该阅读https://stackoverflow.com/a/10717999/7599798以了解如何在不使用Activate(或Select)的情况下处理表格和范围

于 2019-10-23T06:51:55.910 回答