Получение Runtime Ошибка 1004 с использованием метода Copy Range - PullRequest
0 голосов
/ 23 октября 2019

Описание: я пытаюсь разрешить пользователю выбрать файл Excel с помощью обзора, затем скопировать данные из Листа3 в выбранный файл и вставить в текущую рабочую книгу Лист2 (имя которой - Необработанные данные (ШАГ 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

1 Ответ

3 голосов
/ 23 октября 2019

Ваш диапазон адресов недействителен. Возможно, вы имеете в виду ActiveSheet.Range("A2:A3063")

И вам следует прочитать https://stackoverflow.com/a/10717999/7599798, чтобы получить представление о том, как обращаться с таблицами и диапазонами, не используя Activate (или Select)

...