Код VBA не может скопировать существующий лист в новый файл - PullRequest
1 голос
/ 08 мая 2020

У меня есть файл макроса, который преобразует некоторые необработанные данные в обработанный лист, затем я выполню несколько действий, таких как архивирование предыдущего обработанного файла и сохранение последнего обработанного листа в новый файл и сохранение файла.

Ниже приведен соответствующий код после обработки:

' Saving in the processed file in folder

   ' Save a copy of the old file as backup
   If Not Len(Dir(saveFolder & saveFile & ".xlsx")) = 0 Then

        Name saveFolder & saveFile & ".xlsx" As Sheets("SETTINGS").Cells(6, 2) & saveFile & _
            " - Backup - " & Format(Now, "YYYYMMDD HHMM") & ".xlsx"

    End If

    ' Create the new workbook
    Set destWB = Workbooks.Add

    ' Copy PROCESSED into new sheet
    ThisWorkbook.Sheets("PROCESSED").Copy Before:=destWB.Sheets(1)

При выполнении команды Copy была выдана следующая ошибка:

Ошибка времени выполнения '429':

Компонент ActiveX не может создать объект

Я попытался отладить программу и не смог найти проблему. Новая книга создана. Я проверил, что он существует, до следующей команды. Я проверил, что задействованный лист можно переместить в книгу fre sh. Я просто не понимаю, почему это не работает.

Также следует отметить, что этот макрос отлично работает до двух месяцев go. Сейчас эта ошибка постоянно случается. Я также попытался сбросить данные приложения Excel, если это не повлияет.

Большое спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...