Форум по VBA и MS Office

VBA, Excel => VBA, макросы в Excel => Тема начата: anshuba от 14 июня 2018, 09:50

Название: Excel VBA Макросы: PasteSpecial, ошибка Subscript out of range
Отправлено: anshuba от 14 июня 2018, 09:50
В этом коде строка с "PasteSpecial" выдает ошибку: Subscript out of range.
Почему происходит ошибка?

Workbooks("Прайс экспериментмакрос.xlsm").Sheets("СО0П").Range("A" & lr & ":B" & lr).Copy
Workbooks("Стол островной без полки (до 2000).xlsx").Sheets("Себестоимость").Range("D2").PasteSpecial _
    Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Название: Re: Excel VBA Макросы: PasteSpecial, ошибка Subscript out of range
Отправлено: Администратор от 14 июня 2018, 09:55
Возможные причины ошибки:
1) файл "Стол островной без полки (до 2000).xlsx" не открыт;
2) файл "Стол островной без полки (до 2000).xlsx" открыт, но в другом экземпляре экселя. Поэтому текущий экземпляр экселя не видит файл;
3) имя файла неправильно указано в коде макроса;
4) нет листа "Себестоимость";
5) имя листа в коде указано неправильно.

То есть ошибка "Subscript out of range" означает, что в коллекции нет элемента с таким именем.
В данном случаи коллекции это открытые эксель-файлы, листы эксель файла.
Название: Re: Excel VBA Макросы: PasteSpecial, ошибка Subscript out of range
Отправлено: anshuba от 14 июня 2018, 11:07
спасибо