Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

VBA

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 83, средняя оценка - 4.81
Well78
Сообщений: n/a
#1

Как вставить кнопку в лист Excel? - VBA

04.04.2012, 14:27. Просмотров 10468. Ответов 5
Метки нет (Все метки)

В лист Excel вставляю стандартную кнопку
CommandButton программно с помощью метода
AddOleObject.
Перед вставкой кнопки я запоминаю в переменную
некое значение.
После вставки кнопки, значение переменной теряется.
И вообще такое ощущение, что в макрос отрабатывает до
конца метод, вставляющий кнопку и все переменные теряются,
форма разрушается, короче говоря макрос падает.
Вопрос: если есть объяснение этому явлению, то как
обойти эти проблемы. Либо порекомендуйте другое решение.
Мне необходимы кнопки на листе. Может можно использовать
стандартные объекты Excel?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.04.2012, 14:27
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как вставить кнопку в лист Excel? (VBA):

Как вставить на Excel-лист рисунок - значок кнопки ленты MS Office - VBA
На ленте есть кнопки и у кнопок есть рисунки. Например, в "Excel 2010": вкладка "Главная" - группа "Редактирование" - у кнопки "Найти и...

Как вставить в лист Excel несколько файлов Outlook из папки Windows - VBA
Добрый день! Необходимо вставить в лист Excel файлы Outlook. Пользователь вызывает макрос, который позволяет ему выбрать папку...

Пользовательская функция на VBA для Excel - как вставить данные на лист? - VBA
Привет. Что-то я туплю - у меня функция возвращает массив из двух значений. Но на лист выкладывает одно. Не могу сообразить, как оба...

Вставить в лист excel множество txt из папки - VBA
Добрый день! Необходимо вставить в один лист excel однотипные .txt, лежащие в одной папке с .xls, в каждом .txt два столбца,...

Данные из Excel вставить в стороннее приложение и нажать там кнопку - VBA
Доброго времени суток. Вопрос: Можно ли в VBA создать макрос который брал данные с определенной ячейки Exella и вставил в...

Excel 2007. Скрыть ярлычок "Вставить лист" - VBA
Возможно ли в Excel 2007 средствами VBA убрать(скрыть) ярлычок "Вставить лист", который находится справа от ярлычков существующих...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Димит
85 / 32 / 14
Регистрация: 03.11.2010
Сообщений: 429
04.04.2012, 15:23 #2
Код?
Можно делать кнопки на листе, в панеле, на форме и т.д.
Всё зависит от Вас.
0
Well78
Сообщений: n/a
04.04.2012, 15:53 #3
Мне нужны кнопки в нужных мне ячейках.
Код там простой.
В цикле при определенных условиях я
вставляю по две кнопки в ячейки листа.
код вставки:
Visual Basic
1
2
3
4
With WorkSheets("Лист2").Shapes.AddOLEObject Left:=CellX, Top:=CellY, Width:=30, Height:=20, ClassType:="Forms.CommandButton.1"
   .Name = "AddButton" & Num
   .Caption = "Добавить ..."
End With
также вторую кнопку пихаю
Letter_D
1 / 1 / 1
Регистрация: 18.06.2008
Сообщений: 329
04.04.2012, 15:56 #4
Объявить переменные на уровне модуля.
0
Well78
Сообщений: n/a
04.04.2012, 16:01 #5
так и есть
Димит
85 / 32 / 14
Регистрация: 03.11.2010
Сообщений: 429
04.04.2012, 16:38 #6
Попробуй так:
Visual Basic
1
2
3
4
With Worksheets("Лист2").OLEObjects.Add(ClassType:="Forms.CommandButton.1", Left:=CellX, Top:=CellY, Width:=30, Height:=20)
.Name = "AddButton" & Num
.Object.Caption = "Добавить ..."
End With
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.04.2012, 16:38
Привет! Вот еще темы с ответами:

Excel: как удалить лист, чтоб Excel не ругался? - VBA
Привет! Удаляю лист из книги (из тех, что создается по умолчанию при создании нового файла): Set objWb = objExc.Workbooks.Add ...

Как добавить кнопку на лист - VBA
Подскажите пожалуйста, как сделать в EXCEL кнопку чтобы при ее нажатии запускался макрос Visual Basic? Чего-то не могу ее найти не в...

Как вставить на лист строку из коллекции строк? - VBA
Всем доброго дня. Собрал все строки из нескольких файлов в коллекцию. А вот как их все вставить на лист что-то не соображу. elm...

Как найти минимальное значение и вставить на другой лист - VBA
Друзья, привет. Макрос вроде бы не сложный, но все же у меня не получается. У меня есть на листе 1 таблица, в которой 10 строк,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
04.04.2012, 16:38
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru