Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 07.08.2018
Сообщений: 26
1

Ошибка при обращении к объектам при открытии формы в режиме добавления данных acFormAdd

04.09.2018, 16:16. Показов 2930. Ответов 27

Author24 — интернет-сервис помощи студентам
запускаю простой код, который в теории должен открыть форму в режиме добавления данных и сделать кнопки не активными

Visual Basic
1
2
3
4
5
6
Private Sub КнпДобавить_Click()
DoCmd.Close acForm, "форма движения", acSaveYes
DoCmd.OpenForm "форма движения", , , , acFormAdd
[КнпОК].Enabled = True
[КнпСохранить].Enabled = True
End Sub
возникает ошибка 2467, что объекты не найдены
такое впечатление. что при открытии форма не получает фокус.
хотя указание forms![форма движения].SetFocus также ничего не меняет
в чем может быть проблема? заранее благодарю за ответ
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.09.2018, 16:16
Ответы с готовыми решениями:

При открытии формы и вводе нужных данных в поля - ОШИБКА
В чём ошибка? спасибо

Использование двумерных массивов при обращении к объектам классов
Проблема в программе, если будет нужно, напишу подробности программы. Компилятор ругается на эту...

Формы. При повторном открытии формы сбрасываются результаты вывода данных
Создал 2 формы. В 1й форме проходит расчет различных выражений. Данные расчета присваиваются...

Ошибка при открытии формы
Всем привет,подскажите,пожалуйста, в чем может быть проблема! Открываю бд, выскакивает форма с...

27
Эксперт MS Access
26806 / 14485 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
04.09.2018, 16:26 2
Лучший ответ Сообщение было отмечено Alex Ganov как решение

Решение

Цитата Сообщение от Alex Ganov Посмотреть сообщение
возникает ошибка 2467, что объекты не найдены
Если Вы запускаете код не из формы движения, то разумеется программа не знает, что кнопки есть не на активной форме, а на форме движения. И задавать свойства контролам надо в правильной форме
Visual Basic
1
2
3
4
5
6
7
8
Private Sub КнпДобавить_Click()
  DoCmd.Close acForm, "форма движения", acSaveYes
  DoCmd.OpenForm "форма движения", , , , acFormAdd
  with forms![форма движения]
    ![КнпОК].Enabled = True
    ![КнпСохранить].Enabled = True
  end with
End Sub
Но вообще сама идея закрывать и заново открывать форму выглядит странной... Уверен, что того, что Вы хотите можно добиться менее болезненными способами
1
Модератор
Эксперт MS Access
6012 / 2840 / 693
Регистрация: 12.06.2016
Сообщений: 7,631
04.09.2018, 16:33 3
Alex Ganov,

Кнопка КнпДобавить на той же форме?
Тогда так:
Visual Basic
1
2
3
4
5
6
Private Sub КнпДобавить_Click()
 Me.Dirty = False
 Me.DataEntry = True
 КнпОК.Enabled = True
 КнпСохранить.Enabled = True
End Sub
Если нет, то так:
Visual Basic
1
2
3
4
5
6
7
8
Private Sub КнпДобавить_Click()
 With Forms("форма движения")
  .Dirty = False
  .DataEntry = True
  .КнпОК.Enabled = True
  .КнпСохранить.Enabled = True
 End With
End Sub
1
0 / 0 / 0
Регистрация: 07.08.2018
Сообщений: 26
04.09.2018, 16:35  [ТС] 4
идея простая. форма находится в режиме "только чтение", необходимо запустить ее в режим "добавления данных". попробовал, действительно можно не закрывать, а просто сразу открывать форму в новом режиме. Спасибо за помощь
0
Модератор
Эксперт MS Access
6012 / 2840 / 693
Регистрация: 12.06.2016
Сообщений: 7,631
04.09.2018, 16:40 5
Цитата Сообщение от Alex Ganov Посмотреть сообщение
действительно можно не закрывать, а просто сразу открывать форму в новом режиме
Не "открывать в новом режиме", а менять значение свойства уже открытой формы.
Форма не закрывается и не открывается вновь.
0
0 / 0 / 0
Регистрация: 07.08.2018
Сообщений: 26
04.09.2018, 16:41  [ТС] 6
что самое интересное, кнопка кнпОК как раз в той форме из который происходит вызов открытия в режим добавления данных, но при этом при открытии формы в режиме добавления данных система не находит нужной кнопки
0
Модератор
Эксперт MS Access
6012 / 2840 / 693
Регистрация: 12.06.2016
Сообщений: 7,631
04.09.2018, 16:43 7
Чего-чего?
0
0 / 0 / 0
Регистрация: 07.08.2018
Сообщений: 26
04.09.2018, 16:43  [ТС] 8
Цитата Сообщение от Capi Посмотреть сообщение
Не "открывать в новом режиме", а менять значение свойства уже открытой формы.
Форма не закрывается и не открывается вновь.
если запустить такой код, то с формы пропадают все поля, то есть как только ставлю свойство "Ввод данных" на TRUE (втч вручную), то все поля формы исчезают и просто остается заголовок и белый лист
0
Модератор
Эксперт MS Access
6012 / 2840 / 693
Регистрация: 12.06.2016
Сообщений: 7,631
04.09.2018, 16:45 9
Источник данных формы, видимо, является необновляемым?
0
0 / 0 / 0
Регистрация: 07.08.2018
Сообщений: 26
04.09.2018, 16:48  [ТС] 10
Цитата Сообщение от mobile Посмотреть сообщение
Но вообще сама идея закрывать и заново открывать форму выглядит странной... Уверен, что того, что Вы хотите можно добиться менее болезненными способами
интересно, что если предварительно не закрыть форму, то система не закрыть форму, то код по кнопкам выполняется, а вот форма так и остается в режиме readonly
0
Модератор
Эксперт MS Access
6012 / 2840 / 693
Регистрация: 12.06.2016
Сообщений: 7,631
04.09.2018, 16:51 11
Голову морочите. И только.
Разберитесь со свойствами и источником данных формы.
1
0 / 0 / 0
Регистрация: 07.08.2018
Сообщений: 26
04.09.2018, 17:01  [ТС] 12
Спасибо за советы. В чем суть понял
0
0 / 0 / 0
Регистрация: 07.08.2018
Сообщений: 26
18.01.2019, 19:27  [ТС] 13
вот теперь по прошествии 4-х с половиной месяцев, 4-х книг от корки до корки (5-я в процессе), справок, примеров и около 10000 строк кода в голове все встало на свои места и такие вопросы больше не возникают
0
Эксперт MS Access
7398 / 4535 / 295
Регистрация: 12.08.2011
Сообщений: 14,023
19.01.2019, 09:11 14
Цитата Сообщение от Alex Ganov Посмотреть сообщение
4-х книг от корки до корки (5-я в процессе)
я столько не прочитал за 10 лет
0
0 / 0 / 0
Регистрация: 07.08.2018
Сообщений: 26
19.01.2019, 09:36  [ТС] 15
ну а как по-другому учиться . когда ты студент, то можно долго дурку гонять и слушать преподов. а когда студенчество давным давно прошло, то книги - довольно эффективный способ
0
Эксперт MS Access
7398 / 4535 / 295
Регистрация: 12.08.2011
Сообщений: 14,023
19.01.2019, 14:34 16
мне хватило одного двухтомника и частично ещё одной, итого две.
1
0 / 0 / 0
Регистрация: 07.08.2018
Сообщений: 26
20.01.2019, 02:00  [ТС] 17
Цитата Сообщение от alvk Посмотреть сообщение
мне хватило одного двухтомника и частично ещё одной, итого две.
подскажите название двухтомника, почитаю тоже для общего развития. спасибо
0
Эксперт MS Access
7398 / 4535 / 295
Регистрация: 12.08.2011
Сообщений: 14,023
20.01.2019, 06:33 18
Он бумажный :
https://www.ozon.ru/context/detail/id/110994/
0
0 / 0 / 0
Регистрация: 07.08.2018
Сообщений: 26
20.01.2019, 10:37  [ТС] 19
Цитата Сообщение от alvk Посмотреть сообщение
Большое спасибо , нашел вот такую "небумажную": Jennigs Roger - Microsoft Access 2010 In Depth. думаю, что актуальнее читать про 2010, хотя уже и 2019 выпустили
0
Эксперт MS Access
7398 / 4535 / 295
Регистрация: 12.08.2011
Сообщений: 14,023
21.01.2019, 01:38 20
Цитата Сообщение от Alex Ganov Посмотреть сообщение
думаю, что актуальнее читать про 2010
Ха-ха-ха! Кастрат актуальнее полноценного, дожили. Не скажу про 2019, но 2016 и 2013 - это уже не кастраты, там даже ног нету.
1
21.01.2019, 01:38
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.01.2019, 01:38
Помогаю со студенческими работами здесь

Ошибка при открытии формы
Добрый день. После бессонной ночи раздумий, сдался. в общем проблема такова. При взаимодействии с...

Ошибка при открытии формы!!!!!!!
здравствуйте!! помогите!! у меня такая проблема.. когда открываю свой проект (например Project1),...

Ошибка при открытии формы
Добрый день! Помогите,пожалуйста.найти ошибку,выходит на строчку:Form1.Show Сначала пишет,что...

Ошибка VB при открытии формы
Доброго времени суток. Не пинайте, задача очень похожа на ту, что описана в шапке, но с VB я...

Ошибка при открытии формы
Решил немного упростить код, теперь при запуске приложения вылетает ошибка: ".Form3 не содержит...

Ошибка при открытии формы
Доброго времени суток! Ошибка (скрин во сложении) возникает только на компьютерах отдельного...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru