Доброго времени суток! Есть 4 отчета, которые тянут данные из одного файла-донора. Был написан макрос для каждого отчета (суть - один столбец скопировать, а на его место подтянуть свежие данные из файла-донора).
Затем для большей автоматизации был написан один большой макрос, который копирует сами файлы отчетов, меняет в названии дату, открывает их и в каждом файле выполняет соответствующий макрос (записаны как Private Sub внутри большого макроса). Подмакросы внутри него идентичны изначальным четырем.
Всё работало отлично, но недавно 2 подмакроса стали завершаться на середине с закрытием файлов (копируется старый столбец, но при обращении к файлу-донору отчет закрывается с сохранением). Остальные 2 подмакроса дорабатывают до конца. Ошибок никаких не выдается. То есть по итогу должно быть открыто 4 файла с новыми данными, а по факту открыто 2 как положено, а 2 закрыты с наполовину отработанными макросами. Оригинальные макросы продолжают правильно работать по отдельности.
Файл донор задается командой Set donor = Workbooks.Open(Filename:=xxxxx, UpdateLinks:=False) Опытным путем (расставляя Stop на разные строки) было выяснено, что подмакросы прекращают работу на первом обращении к донору (команда donor.Activate). Но опять же - такие обращения есть во всех подмакросах (их структура идентична) и в изначальных макросах.
Собственно вопрос - что может вызывать такие проблемы, т.к. сломалось по факту на ровном месте? Винда, версия экселя (2013), сами макросы никак не изменялись. На старых "донорах" макрос также не работает. Единственное - чаще стал сбоить эксель, например постоянно выдает ошибки типа "ошибка при направлении команды приложению" при открытии файлов. Могут ли это быть проблемы с производительностью?
Сам макрос, к сожалению, приложить не смогу, т.к. с рабочего компа запрещено пересылать информацию, а доступ к данному сайту вообще заблокирован =( Но и вопрос больше по экселю, чем по конкретному макросу.