|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
08.05.2008, 11:13 | #21 | |
Форумчанин
Регистрация: 21.04.2008
Сообщений: 110
|
Цитата:
Sub Ìàêðîñ1() ActiveSheet.Shapes(1).TopLeftCell.S elect End Sub Sub Ìàêðîñ1() ActiveSheet.Shapes(1).BottomRightCe ll.Select End Sub вот! |
|
08.05.2008, 11:39 | #22 |
Форумчанин
Регистрация: 21.04.2008
Сообщений: 110
|
Sub Макрос1()
ActiveSheet.Shapes(Application.Call er).BottomRightCell.Select End Sub Sub Макрос2() ActiveSheet.Shapes(Application.Call er).TopLeftCell.Select End Sub ыы-ы-ы--ыы-ыыыыыы |
08.05.2008, 12:05 | #23 |
Форумчанин
Регистрация: 21.04.2008
Сообщений: 110
|
блин!
если удалять строки например с 5-й по 10-ю и где-то посередине есть кнопка, то она не удаляется!!! ... как заставить удалять и кнопку??? код на удаление: Range(Rows(r), Rows(i + 1)).Delete Последний раз редактировалось kievlyanin; 08.05.2008 в 12:06. Причина: уточнение |
10.05.2008, 16:01 | #24 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Чтобы кнопка удалялась, в контекстном меню нужной кнопки войти в Формат объекта->Свойства и выбрать опцию "Перемещать и изменять объект вместе с ячейками".
Средствами VBA это делается так: Код:
Чем шире угол зрения, тем он тупее.
|
12.05.2008, 10:39 | #25 | |
Форумчанин
Регистрация: 21.04.2008
Сообщений: 110
|
Цитата:
так и есть - но все равно при удалении ячеек кнопки остаются. |
|
12.05.2008, 11:02 | #26 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Что значит остаются?
Если все так, то кнопки не будет видно на экране. После удаления строки (ячейки) к которой "прикреплена" кнопка, остается "нулевой" объект. Т.е. он существует, но его не видно. Для полного удаления объекта нужно обращаться к нему по имени, или по порядковому номеру. Что при Вашей организации рабочего листа невозможно. Именно поэтому, я предложил такой вариант, недостаток которого то, что количество этих "нулевых" объектов будет расти, и, следовательно, будет расти и объем файла. Через некоторое время работы (при значительном увеличении размера файла), его можно "почистить" вручную, т.е. выделить все Shapes листа и удалить ненужные. Есть еще вариант с доп. столбцом (лучше скрытым), в соответствующую строку которого будет записываться, например, Name или Index создаваемого объекта. Тогда при удалении соответствующих строк можно будет считывать имя (номер) объекта и удалять его корректно. Если такой вариант устроит - прикрепите файл (фрагмент файла) с уже существующими макросами.
Чем шире угол зрения, тем он тупее.
|
12.05.2008, 11:05 | #27 |
Форумчанин
Регистрация: 21.04.2008
Сообщений: 110
|
нашел тут один примерчик и пытаюсь его передалть для своих целей. но что-то напутал в лгических функиях - чтото там не контачит:
Sub testme3() Dim myCell As Range, myShape As Shape Set myCell = Range(Rows(1), Rows(50)) For Each myShape In ActiveSheet.Shapes If Intersect(myShape.TopLeftCell, myCell) Then myShape.Delete Next End Sub |
12.05.2008, 11:09 | #28 | |
Форумчанин
Регистрация: 21.04.2008
Сообщений: 110
|
Цитата:
да вот с этим я и пытаюсь побороться - есть тут один вариант: For Each z In ActiveSheet.Shapes z.Delete Next это удаляет все кнопки на листе .. я сейчас хочу удалять только в области таблицы (область у меня известна) .. т.е. первым действием удалить кнопки, вторымсаму таблицу. |
|
12.05.2008, 12:24 | #29 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Можно еще так:
Если все кнопки ссылаются на один и тот же макрос, то в начале этого макроса поместить: Код:
В конце макроса вставить Код:
Т.е. какую кнопку нажали - та и удалится после выполнения макроса.
Чем шире угол зрения, тем он тупее.
|
12.05.2008, 12:32 | #30 |
Форумчанин
Регистрация: 21.04.2008
Сообщений: 110
|
"" Т.е. какую кнопку нажали - та и удалится после выполнения макроса ""
не пойдет. мне надо не 1 кнопку удалить а группу кнопок расположенную в области Range(Rows(r), Rows(i + 1)) тах их будет пять и нажата будет только одна из них. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Объеденение 2-х таблиц | Stanislav | БД в Delphi | 3 | 28.07.2008 09:44 |
Сведение таблиц | Funky_man | Microsoft Office Excel | 1 | 09.01.2008 07:20 |
Сведение таблиц | Funky_man | Microsoft Office Excel | 1 | 08.01.2008 03:36 |
Копирование таблиц из одной базы в другую | KuH | БД в Delphi | 7 | 27.09.2007 15:18 |