2013-03-06 3 views
1

Когда я хочу добавить событие в форму, встроенную в Microsoft Access 2000, я использую опцию [Event Procedure]. Некоторые из моих событий - это глобальные функции, созданные мной в VBA, поэтому я могу просто ввести имя функции в свойство события. Например, у меня есть кнопка возврата на мои формы, у которой это свойство является свойством события OnClick: =GoBack().Построенные аргументы в пользовательском событии

Я хочу, чтобы использовать встроенные аргументы в своих пользовательских функциях как свойство события. Например, событие Form_Error имеет два аргумента: DataErr и Response. В моем глобальном =HandleFormError(), я хочу иметь возможность установить переменную Response.

Возможно ли это, и если да, то как я смогу это сделать?

ответ

2

Я бы сказал, что вам лучше сделать что-то вроде этого

Private Sub Form_Error(DataErr As Integer, Response As Integer) 
    HandleFormError DataErr, Response 
End Sub 

и делать всю свою логику в HandleFormError. Невозможно связать Form_Error с любым способом, кроме Sub Form_Error(DataErr As Integer, Response As Integer). Это просто ограничение VBA.

Для таких событий, как Click, вы можете поместить свои функции в построитель выражений (упрощает копирование/вставка), но, вероятно, так же хорошо, как это делается в обычном событии стиля Form_click.

+0

Это не тот ответ, который я хотел прочитать, но это ответ. Спасибо! – Bobort

Смежные вопросы