Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Очистка ячеек заданного диапазона от объектов(фигур) - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Очистка ячеек заданного диапазона от объектов(фигур)
ilyxa1234 Дата: Среда, 27.05.2020, 22:32 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Добрый вечер. Имеется таблица с блоками-шаблонами содержащая фигуры, задача очистить рабочую область в диапазоне A8:LG800 от всего. ActiveSheet.Range("A8:LG800").clear чистит и форматирует, но не удаляет фигуры, а ActiveSheet..DrawingObjects.Delete - очищает всю книгу от объектов включая и блок-шаблоны, которые не должны затрагиваться, Как сделать так чтобы от объектов очищался только заданный диапазон
К сообщению приложен файл: 4357363.xls (51.5 Kb)
 
Ответить
СообщениеДобрый вечер. Имеется таблица с блоками-шаблонами содержащая фигуры, задача очистить рабочую область в диапазоне A8:LG800 от всего. ActiveSheet.Range("A8:LG800").clear чистит и форматирует, но не удаляет фигуры, а ActiveSheet..DrawingObjects.Delete - очищает всю книгу от объектов включая и блок-шаблоны, которые не должны затрагиваться, Как сделать так чтобы от объектов очищался только заданный диапазон

Автор - ilyxa1234
Дата добавления - 27.05.2020 в 22:32
Pelena Дата: Среда, 27.05.2020, 22:48 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19404
Репутация: 4555 ±
Замечаний: ±

Excel 365 & Mac Excel
Здравствуйте.
[vba]
Код
Public Sub DelShapes()
    Dim shp As Shape, rng As Range
    Set rng = Range("A8:LG800")
    For Each shp In ActiveSheet.Shapes
        If shp.TopLeftCell.Row >= rng.Row And shp.TopLeftCell.Row <= rng.Row + rng.Rows.Count And shp.TopLeftCell.Column <= rng.Columns.Count Then
            shp.Delete
        End If
    Next shp
End Sub
[/vba]
К сообщению приложен файл: 4357363.xlsm (18.3 Kb)


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеЗдравствуйте.
[vba]
Код
Public Sub DelShapes()
    Dim shp As Shape, rng As Range
    Set rng = Range("A8:LG800")
    For Each shp In ActiveSheet.Shapes
        If shp.TopLeftCell.Row >= rng.Row And shp.TopLeftCell.Row <= rng.Row + rng.Rows.Count And shp.TopLeftCell.Column <= rng.Columns.Count Then
            shp.Delete
        End If
    Next shp
End Sub
[/vba]

Автор - Pelena
Дата добавления - 27.05.2020 в 22:48
ilyxa1234 Дата: Четверг, 28.05.2020, 07:51 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Pelena, спасибо
 
Ответить
СообщениеPelena, спасибо

Автор - ilyxa1234
Дата добавления - 28.05.2020 в 07:51
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!