Страницы: 1
RSS
VBA. Ошибка: run-time error '1004': method 'Add' of object 'Sheets' failed, "перекрытие" действий ?!
 
Добрый день!
Возможно, Вы мне сможете помочь :-)
Проблема заключается в следующем:

При запуске макроса выдает сообщение об ошибке:
run-time error '1004': method 'Add' of object 'Sheets' failed

Выделяет:
Код
Workbooks(raschet).Sheets.Add After:=Sheets(Sheets.Count)

Перед этим идет обновление большой сводной таблицы.
1) Если не выполнять обновление сводной таблицы, то процедура выполняется без ошибки.
2) Также, если после сообщения об ошибка нажать debug, а потом снова run sub, то процедура выполняется далее без ошибки.
Возникает мысль, что ошибка возникает из-за перекрытия действий.

Может ли такое быть?
Если да, то как этого избежать? Например, задать промежуток времени бездействия после обновления таблицы.
Изменено: Rita - 11.11.2016 09:24:51
 
Сама книга случаем не защищена? где код макроса находится(модуль страницы, книги, отдельном)?
приложите пример файла, так будет куда легче разобраться.
Изменено: heso - 11.11.2016 09:35:40
 
А так не поможет?
Код
With Workbooks(raschet)
    .Sheets.Add After:=.Sheets(.Sheets.Count)
End With
Чем шире угол зрения, тем он тупее.
 
heso, пример приложить не могу, так как это не просто сводная таблица,- насколько понимаю, это запрос к базе данных для получения актуальной информации.
Это не я писала, мне такое предоставили.
Поотдельности то всё работает, да и вместе тоже работает, только после возниконовения указанной ошибки приходится заново запускать.
Не знаете, может ли это быть связано с тем, что процедура хочет выполнить действие по созданию нового листа, а таблица всё еще обновляется?
 
SAS888, спасибо,- работает без ошибки.
То есть я не точно прописала после какого листа вставлять, да?
Вашему варианту будет равнозначно то, что я ниже написала?
Код
Workbooks(raschet).Sheets.Add After:=Workbooks(raschet).Sheets(Workbooks(raschet).Sheets.Count)
 
Цитата
Rita написал: да?
Ваша конструкция пытается добавить лист в книгу raschet, но количество листов считает в АКТИВНОЙ книге
Цитата
Rita написал: равнозначно то, что я ниже написала?
да, равнозначно, но избыточно
Согласие есть продукт при полном непротивлении сторон
 
Sanja, понятно,- спасибо )
Страницы: 1
Читают тему
Наверх