Добрый день, дамы и господа Господа, с прошедшим; дамы, с предстоящим праздником!
У меня беда: был макрос, удаляющий строки, если в столбце 10 содержатся определенные значения ("БВХ Усть-Кут", "КС-2 Олёкминская*"...). Но случилось мне добавить к данному коду макрос, удаляющий объекты (рисунки) и начало выскакивать сообщение: "Индекс указанного набора выходит за допустимые пределы". При проигрывании отдельно макроса, удаляющего рисунки (объекты) все работает без сообщений.
Как побороть данную проблему?
[vba]
Код
Sub УдСтрокиСклад() Application.DisplayAlerts = False PS = Range("A" & Rows.Count).End(xlUp).Row For I = PS To 1 Step -1 If Cells(I, 10) = "БВХ Усть-Кут" Or Cells(I, 10).Value Like "КС-2 Олёкминская*" Or Cells(I, 10).Value Like "БВХ Беркакит*" Or Cells(I, 10).Value Like "БВХ Солянка" _ Or Cells(I, 10).Value Like "КС-4 Нимнырская_5.4 - (Основной склад - ячейки)*" Or Cells(I, 10).Value Like "БВХ Большой Нимныр*" Then Rows(I).Delete End If Next
ActiveSheet.DrawingObjects.Delete 'здесь что-то не так Application.DisplayAlerts = True ' закрыть Макрос Workbooks("макрос.xlsm").Close SaveChanges:=False End Sub
[/vba]
Добрый день, дамы и господа Господа, с прошедшим; дамы, с предстоящим праздником!
У меня беда: был макрос, удаляющий строки, если в столбце 10 содержатся определенные значения ("БВХ Усть-Кут", "КС-2 Олёкминская*"...). Но случилось мне добавить к данному коду макрос, удаляющий объекты (рисунки) и начало выскакивать сообщение: "Индекс указанного набора выходит за допустимые пределы". При проигрывании отдельно макроса, удаляющего рисунки (объекты) все работает без сообщений.
Как побороть данную проблему?
[vba]
Код
Sub УдСтрокиСклад() Application.DisplayAlerts = False PS = Range("A" & Rows.Count).End(xlUp).Row For I = PS To 1 Step -1 If Cells(I, 10) = "БВХ Усть-Кут" Or Cells(I, 10).Value Like "КС-2 Олёкминская*" Or Cells(I, 10).Value Like "БВХ Беркакит*" Or Cells(I, 10).Value Like "БВХ Солянка" _ Or Cells(I, 10).Value Like "КС-4 Нимнырская_5.4 - (Основной склад - ячейки)*" Or Cells(I, 10).Value Like "БВХ Большой Нимныр*" Then Rows(I).Delete End If Next
ActiveSheet.DrawingObjects.Delete 'здесь что-то не так Application.DisplayAlerts = True ' закрыть Макрос Workbooks("макрос.xlsm").Close SaveChanges:=False End Sub