CheckBox создан Controls.Add Как обработать Click? и ещё...

Программирование на Visual Basic for Applications
Kalendula
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 08.04.2004 (Чт) 9:13

CheckBox создан Controls.Add Как обработать Click? и ещё...

Сообщение Kalendula » 08.04.2004 (Чт) 13:08

Excel
1.Типа:

Код: Выделить всё
Set A = UserForm1.Controls.Add("Forms.CheckBox.1", "No1", True)


Как и где написать обработчик событий, ну, там Click, Enter, Change для данного Control :?: :shock:

2. И ещё:
Как и где описать переменные/процедуры, чтобы переменные были видимы и в процедуре обработки события Click для CommandButton находящегося на листе и в процедуре обработки события Click для CommandButton находящегося в UserForm :?:

Заранее СПСБ ГРМДНЙШ.

Calvin
Постоялец
Постоялец
 
Сообщения: 409
Зарегистрирован: 21.01.2003 (Вт) 12:13
Откуда: Sebastopol

Сообщение Calvin » 08.04.2004 (Чт) 13:31

1. Процедуры обработки событий элементов, находящихся в форме, должны находиться в окне кода данной формы
2. Эти переменные могут быть объявлены или в модулях или в окне кода формы в разделе общих объявлений, правда объявление должно сопровождаться ключевым словом Public, напр.
Код: Выделить всё
Public n as Integer
-Whose the motocycle, is this? -It`s a chopper, baby! -Whose chopper is this? -Zed`s! -Who is Zed? -Zed`s dead, baby, Zed`s dead! :-D

Kalendula
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 08.04.2004 (Чт) 9:13

По пункту 2 нет возражений, спасибо, работает...

Сообщение Kalendula » 09.04.2004 (Пт) 14:08

По пункту 2 нет возражений, спасибо, работает... :D

Пункт 1

Задача: После создания элемента управления методом Add коллекции Controls необходимо также создать и обработчик событий этого элемента управления. Подскажите как это делается.
В design-time (или как его там) это делается практически автоматом и это понятно. А вот как быть с run-time :?:

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 10.04.2004 (Сб) 8:24

private withevents a as control
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Kalendula
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 08.04.2004 (Чт) 9:13

Сообщение Kalendula » 12.04.2004 (Пн) 7:45

Код: Выделить всё
Private WithEvents A As Control
...
Set A = UserForm1.Controls.Add("Forms.CommandButton.1", "NO", True)


:!: Run-time error '459':
Object or class does not support the set of events :!: :twisted:[/code]

MC
Начинающий
Начинающий
 
Сообщения: 1
Зарегистрирован: 14.02.2005 (Пн) 16:42

Сообщение MC » 14.02.2005 (Пн) 16:51

Private WithEvents cb As CheckBox
...
Set cb = Controls.Add("vb.checkbox", "cb1")
...
Private Sub cb_Click()

End Sub[code][/code]

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 14.02.2005 (Пн) 16:53

И снова, снова гробокопательство процветает :)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 14.02.2005 (Пн) 16:55

Кто-то явно в Fallout начал переигрывать :)
Lasciate ogni speranza, voi ch'entrate.


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

    TopList