Страницы: 1
RSS
Удаление фигур по их номеру
 
Приветствую всех форумчан.
Имеется код, который по таблице - рисует фигуры.

Подскажите - как по щелчку макроса - удалить с листа - фигуры, номера которых вписаны в диапазон C4:C15 ?
(ориентировка должна быть только на номера)
 
Megamen2, против ничего не имею, но интересно что вы с форума на форум скачете?
Тут, там, снова тут
По вопросам из тем форума, личку не читаю.
 
БМВ, так вопрос-то новый.

Один вопрос - одна тема.
Таковы вроде бы - правила этого форума.
Или я ошибаюсь ?
 
Цитата
БМВ написал:
что вы с форума на форум скачете?
Миш, а что ты хочешь?
Megamen2
Надо оправдывать ник.
 
Нарушений нет, любопытно просто. Темы все разные, но почему такое непостоянство в выборе форума? Если боитесь что скажут что "опять он" , так или все равно скажут или не скажут вовсе.

off
Андрей, я так понял шутка осталась незамеченной :-)
По вопросам из тем форума, личку не читаю.
 
Почему? Очень даже заценил.  :)
Но кот в кепке, это не кошка, а уж ведмедик клишеногий с косарем в пасти - тем паче.

PS Для не сведующих - "Ведмедик клишеногий", это конфеты "Мишка косолапый" производства Киев
 
off
Ну я не стал менять оригинал, оставил кошку без замены на кота :-)
По вопросам из тем форума, личку не читаю.
 
БМВ, почему такое непостоянство в выборе форума....

Ну вот представьте себе - все желающие пойдут - только на форум planetaexcel.ru.
На этом форуме - будут очень интересные, оживленные дискуссии на разные темы.
А остальные форумы - зачахнут, и им с такой низкой посещаемостью не хватит денег - даже чтобы оплатить свой хостинг.
(Не о себе думаю... а о благе народном)
 
Миш, тогда отбрасываем последний дурацкий вопрос.
Я согласен!
 
Megamen2, если так, то ничего против не имею.
По вопросам из тем форума, личку не читаю.
 
Цитата
Megamen2 написал:
Подскажите
Шаг1 - ищем, как удалить с листа фигуры
Шаг2 - ищем, как из текстовой строки выделить номер
Шаг3 - ищем, как в цикле перебрать ячейки диапазона
Шаг4 - РАДУЕМСЯ, как хорошо все работает!
 
Код
Sub Макрос2()
arr = Cells(4, 3).CurrentRegion.Value
Set Dict = CreateObject("Scripting.Dictionary")
For I = 2 To UBound(arr)
 Dict.Add arr(I, 5), arr(I, 5)
Next

For Each Shape In ActiveSheet.Shapes
 If Dict.exists(Shape.DrawingObject.Caption) Then Shape.Delete
Next
End Sub

Наверно погорячился, там про номера было что-то

странно вы делаете составное имя и потом только по второй части хотите удалить.

Код
Sub macros2()
arr = Cells(4, 3).CurrentRegion.Value
Set Dict = CreateObject("Scripting.Dictionary")
For I = 2 To UBound(arr)
 Dict.Add arr(I, 1), arr(I, 1)
Next
For Each Shape In ActiveSheet.Shapes
 If Dict.exists(CInt(Mid(Shape.Name, InStrRev(Shape.Name, " ") + 1))) Then Shape.Delete
Next
End Sub

Изменено: БМВ - 15.11.2018 00:07:59
По вопросам из тем форума, личку не читаю.
 
БМВ, понятно.
Оба варианта хороши.

Спасибо за ответ.
Страницы: 1
Наверх