Всем привет.
Подскажите пожалуйста.
Я копирую значения с одного экселя следующим образом:
и вставляю в другой эксель следующим образом:
В общем смысле это работает, но так как у меня копируемые диапазоны находятся в разных местах Реестра, приходится последовательно их частями копировать и вставлять в Форму.
Раньше всё работало отлично, большой объем отрабатывал нормально, но не давно на рабочем ПК переустановили винду с 10ки на 11ю, офис остался также 2019, но начались проблемы. Иногда макрос может отработать хорошо полностью, а иногда выдает ошибку на методе вставки - Run-time error '1004': Метод Paste из класса Worksheet завершен неверно.
А так как их много в коде, оно происходит не в одном и том же месте, а рандомно в разные случае запуска макроса.
Раньше когда на 10ке всё было хорошо, на всякий случай чтобы успел отрабатывать буфер обмена использовал своеобразный sleep:
Так как иногда выдавал ошибки эксель, что у него не получалось как-то вставить информацию из буфера обмена.
Сейчас поставил слип на 1000, в надежде что в этом дело, но всё тщетно.
Как думаете, что может быть и как решить проблему?
Подскажите пожалуйста.
Я копирую значения с одного экселя следующим образом:
Код |
---|
objXls5.Sheets("Реестр").Range("W6:X" & llastr).SpecialCells(12).Copy |
Код |
---|
objXls6.Sheets("Форма").Paste objXls6.Sheets("Форма").Range("H" & llastr2) |
Раньше всё работало отлично, большой объем отрабатывал нормально, но не давно на рабочем ПК переустановили винду с 10ки на 11ю, офис остался также 2019, но начались проблемы. Иногда макрос может отработать хорошо полностью, а иногда выдает ошибку на методе вставки - Run-time error '1004': Метод Paste из класса Worksheet завершен неверно.
А так как их много в коде, оно происходит не в одном и том же месте, а рандомно в разные случае запуска макроса.
Раньше когда на 10ке всё было хорошо, на всякий случай чтобы успел отрабатывать буфер обмена использовал своеобразный sleep:
Код |
---|
Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As LongPtr) Sleep (400) |
Сейчас поставил слип на 1000, в надежде что в этом дело, но всё тщетно.
Как думаете, что может быть и как решить проблему?