Страница: 1 |
Кто нибудь пробовал программно создать кнопку на форме VBA? Как это сделать, если не секрет?
Добавить просто Вешаем на форму: Dim NewCtrl As Control Private Sub UserForm_DblClick(ByVal Cancel As MSForms.ReturnBoolean) ' по даблклику добавляем кнопку Set NewCtrl = Controls.Add("forms.commandbutton.1", comb) NewCtrl.Left = 10 'отступ слева NewCtrl.Top = 50 ' отступ сверху NewCtrl.Width = 100 ' Длинна кнопки NewCtrl.Height = 25 ' высота кнопки NewCtrl.Caption = "Cancel" ' надпись на кнопке End Sub Вот как прикрутить этой кнопки действия, пока не придумал ' пример вызова ф-ции xControlOnEnter(1) на событие получения фокуса с параметром 1: NewCtrl.OnEnter = "=xControlOnEnter(1)" аналогично можно навесить ф-ции к любому другому событию, доступному для NewCtrl NewCtrl.OnEnter = "=xControlOnEnter(1)" или NewCtrl.Click = ...... у меня вызывают ошибку Run-time error '438', не знаю как у тебя в MSDNе ошибка 438 - неправильно указано свойство объекта, про у меня Акцесс2000. Вызовы ф-ций по событиям и не только для кнопок, например для полей ввода: ct.OnDblClick = "=ListBoxDblClick(1)" ct.AfterUpdate = "=xTblControlAfterUpdate(0)" указанные функции должны быть задекларированы как ФУНКЦИИ в модулях (ну, чтоб доступны с любой точки вызова), проверь REFERENCE, у меня ВКЛ следующие библиотеки и в таком порядке: Visual Basic For Application Microsoft Access 9.0 Object Library Microsoft DAO 3.6 Object Library Microsoft Word 9.0 Object Library Microsoft Office 9.0 Object Library Microsoft Windows Common Control 6.0 (SP4) Microsoft Visual Basic for Application Extensibility 5.3 Microsoft Form 2.0 Object Library что 438 ошибка - неправильно указано свойство объекта, я вкурсе VBA мучаю по Екселем, и все равно при попыткие повесить Событие на программно сформированную кнопку вылетает с 438 ошибкой на моменте формирования объекта Страница: 1 |
Вопрос: Как программно создать кнопку на форме VBA?
Добавлено: 22.04.04 18:49
Автор вопроса: Mirgor | Web-сайт:
Ответы
Всего ответов: 5
Номер ответа: 1
Автор ответа:
bird
ICQ: 40490794
Вопросов: 0
Ответов: 11
Профиль | | #1
Добавлено: 27.04.04 17:03
Номер ответа: 2
Автор ответа:
OAN
Вопросов: 2
Ответов: 17
Профиль | | #2
Добавлено: 27.04.04 17:54
Номер ответа: 3
Автор ответа:
bird
ICQ: 40490794
Вопросов: 0
Ответов: 11
Профиль | | #3
Добавлено: 27.04.04 18:09
Номер ответа: 4
Автор ответа:
OAN
Вопросов: 2
Ответов: 17
Профиль | | #4
Добавлено: 28.04.04 11:05
Номер ответа: 5
Автор ответа:
bird
ICQ: 40490794
Вопросов: 0
Ответов: 11
Профиль | | #5
Добавлено: 28.04.04 14:20