2013-07-17 3 views
0

У меня есть следующий код в моем доступе vba при событии нажатия кнопки. Идея заключается в использовании временной переменной, чтобы передать значение из текстового поля в подчиненной:Ошибка доступа к событию 2007 2007

Private Sub button_novi_ir_Click() 
    On Error GoTo button_novi_ir_Click_Err 

    On Error Resume Next 
    TempVars("brojRN").Value = Me.brojRNtxt 
    DoCmd.OpenForm "PODACI_O_IZVRŠENIM RADOVIMA_FORM", acNormal, "", "", acAdd, acNormal 
    If (MacroError <> 0) Then 
     Beep 
     MsgBox MacroError.Description, vbOKOnly, "" 
    End If 

button_novi_ir_Click_Exit: 
    Exit Sub 

button_novi_ir_Click_Err: 
    MsgBox Error$ 
    Resume button_novi_ir_Click_Exit 

End Sub 

Каждый раз, когда я нажмите на кнопку Я получаю сообщение об ошибке «Произошла ошибка при MS Office Access была связь с сервером OLE или ActiveX Контроль». Я действительно не знаю, что с этим делать. Итак, пожалуйста, кто-нибудь может указать мне в правильном направлении?

Заранее благодарен!

ответ

0

Я не знаю, является ли акцентированный символ в названии вашей формы проблемой - я предполагаю, что это не так. Но вы не должны указывать пустые строки "" для аргументов FilterName и WhereCondition, просто используйте запятые, чтобы пропустить эти аргументы ,,,

И это код, а не макрос, поэтому вы должны использовать объект Err и рассмотрите его Err.Number и Err.Description.

+0

Благодарим вас за ответ. Я изменил имя формы, чтобы удалить локальный символ, и я удалил пустые строки и изменил обработку ошибок, но все равно это не работает. Это не сработало, даже когда я использовал макрос, поэтому я попробовал код. – bjelokrili

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