powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Run-time Error 2467: Объект закрыт или не существует
12 сообщений из 12, страница 1 из 1
Run-time Error 2467: Объект закрыт или не существует
    #32460274
novss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Непонять с чего вылезает ошибка.

Есть Главная Форма (ГФ) есть подчиненная (ПФ), на главной есть кнопка выход. По нажатию этой кнопки проверяется есть ли записи в подчиненной форме, если нет - то диалоговое окно, если да - то форма благополучно закрывается.

Проверка наличия записей в подчиненной форме проверяется строчкой:

Код: plaintext
Me.inclLines.Form.RecordsetClone.RecordCount =  0  


где inclLines - Это имя внедренного объекта.

Так вот, когда записей в подчиненной нет, то все нормально - выпадает диалог и все работает. А когда записи есть, то выпадает ошибка "Run-time Error 2467: Объект закрыт или не существует".

В целях проверки сделал дополнительную кнопку по нажатию которой
Код: plaintext
Msgbox Me.inclLines.Form.RecordsetClone.RecordCount 


и нормально работает, т.е. показывает сколько нужно, т.е. обращение к объекту происходит нормально, а что же тогда не работает при нажатии кнопки Выход.
...
Рейтинг: 0 / 0
Run-time Error 2467: Объект закрыт или не существует
    #32460298
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторMe.inclLines.Form.RecordsetClone.RecordCount = 0

Могу предположить, что такой строчкой устанавливается значение Me.inclLines.Form.RecordsetClone.RecordCount, т.е. в данном примере 0=0, а когда записи есть - это выражение неверно...Может все-таки
Код: plaintext
if Me.inclLines.Form.RecordsetClone.RecordCount >  0  then...
...
Рейтинг: 0 / 0
Run-time Error 2467: Объект закрыт или не существует
    #32460319
novss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну да,
когда писал "проверяется значение" я имел в виду If.
На всякий случай привожу полный текст кода, повешенный на кнопку Выход.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
Private Sub cmbExit_Click()

If Me.Dirty = False Then
        DoCmd.Close acForm,  "F_OrderHeader" 
End If

        
    GoSub InvoiceVerification
    
    
    DoCmd.Close acForm,  "F_OrderHeader" 
Exit Sub

    
' Проверка ввода ТТН
InvoiceVerification:
   
    If Me.inclLines.Form.RecordsetClone.RecordCount =  0  Then
                        
            If MsgBox( "Не указана ТТН, Вы хотите выйти, если Да, то потеряете внесенные данные."  vbYesNo) = vbYes Then
                
                    DoCmd.RunCommand acCmdUndo
                    DoCmd.Close acForm,  "F_OrderHeader" 
                    Exit Sub
                
                Else
                    Exit Sub
                
            End If
        
    End If

Return
    
End Sub
...
Рейтинг: 0 / 0
Run-time Error 2467: Объект закрыт или не существует
    #32460399
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Private Sub cmbExit_Click()

If Me.Dirty = True Then
     If Me.inclLines.Form.RecordsetClone.RecordCount =  0  Then
         If MsgBox( "Не указана ТТН, Вы хотите выйти, если Да, то потеряете  внесенные данные."  vbYesNo) = vbYes Then
                
                    DoCmd.RunCommand acCmdUndo
         end if
     end if                
end if
DoCmd.Close acForm,  "F_OrderHeader" 
Exit Sub

...
Рейтинг: 0 / 0
Run-time Error 2467: Объект закрыт или не существует
    #32460401
novss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Что, ни у кого нет никаких идей...
...
Рейтинг: 0 / 0
Run-time Error 2467: Объект закрыт или не существует
    #32460415
Фотография Serge Gavrilov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторЧто, ни у кого нет никаких идей...
Дык, может вы сначала форму закрываете, а потом пытаетесь ссылаться на нее
...
Рейтинг: 0 / 0
Run-time Error 2467: Объект закрыт или не существует
    #32460416
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
т.е так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Private Sub cmbExit_Click()

If Me.Dirty = True Then
     If Me.inclLines.Form.RecordsetClone.RecordCount =  0  Then
         If MsgBox( "Не указана ТТН, Вы хотите выйти, если Да, то потеряете  внесенные данные."  vbYesNo) = vbYes Then
                
                    DoCmd.RunCommand acCmdUndo
         else
                    exit sub
         end if
     end if                
end if
DoCmd.Close acForm,  "F_OrderHeader" 
Exit Sub

...
Рейтинг: 0 / 0
Run-time Error 2467: Объект закрыт или не существует
    #32460425
Roma R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
If Me.Dirty = False Then
DoCmd.Close acForm, "F_OrderHeader"
Exit Sub
End If
GoSub InvoiceVerification
...
Рейтинг: 0 / 0
Run-time Error 2467: Объект закрыт или не существует
    #32460431
novss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Many thanx 2Kelme.

2Serge Gavrilov:
вероятно я чего-то не понимаю, но где я ее закрыл, до того как обратился?

Best Regards
...
Рейтинг: 0 / 0
Run-time Error 2467: Объект закрыт или не существует
    #32460439
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
If Me.Dirty = False Then
DoCmd.Close acForm, "F_OrderHeader"
End If

вот тут ты её закрываешь, а из процедуры не выходишь.
...
Рейтинг: 0 / 0
Run-time Error 2467: Объект закрыт или не существует
    #32460445
novss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
... и правда, виноват, исправлюсь
...
Рейтинг: 0 / 0
Run-time Error 2467: Объект закрыт или не существует
    #32460446
Фотография Serge Gavrilov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторвероятно я чего-то не понимаю, но где я ее закрыл, до того как обратился?

Вы закрываете форму "F_OrderHeader", я из вашего кода не вижу, что это за форма? Может это и есть форма, которая содержит подформу ...
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Run-time Error 2467: Объект закрыт или не существует
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]