powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как подавить сообщение об ошибке?
25 сообщений из 27, страница 1 из 2
Как подавить сообщение об ошибке?
    #32551086
Фотография Gyslik.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня есть ошибка например № 1111.
И при определенном наборе действий пользователя - выдается сообщение об ошибке.
Как перехватить ошибку таким образом, чтобы никакого сообщения не выдавалось, ни стандартного сообщения Access, ни встроенного моего собщения?

DoCmd.SetWarnings (False) - не помогает.
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551101
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Form_Error. Ты задаешь этот вопрос уже точно не первый раз (третий или пятый - я не уверен).
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551103
Alexander Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Точно не помню но кажется я делал так В момент ошибки программно нажимал esc.
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551106
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
On error resume next
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551124
Фотография Gyslik.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 ВС:
Про Form_Error я помню, мне надо не перехватить ошибку, а избавится от сообщения.
2 ALL - спасибо.

Все оказалось просто.
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551145
Hummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Alexander Popov
Просто пять баллов:)

Блин, впору коллекцию самых "мудрых" решений собирать:)
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551157
Фотография Gyslik.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Очень извиняюсь, но как написать Case на обработку ошибок. Т.е. если такая ошибка, то такое сообщение, если такая, то другое, если 1111, то On error resume next, во всех остальных случаях - стандартные сообщения?

Что-то у меня все время проблемы с синтаксисом.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Private Sub Form_Error(DataErr As Integer, Response As Integer)   
    Const conErrFieldRequiered =  3101 
    Select Case (DataErr =  1111 ) 
    On error resume next
    Case (DataErr = conErrFieldRequiered) Or (DataErr =  2169 ) Then
        Response = acDataErrContinue
        MsgBox "Вы ввели в поле неправильный формат значения."
    Case
        Response = acDataErrDisplay
    End If
End Sub
? ? ?
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551167
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Примерно так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
    Select Case Err.Number
        Case  3197 
            qd.Execute
            Resume Next
        Case Else
            MsgBox Err.Description, vbCritical + vbOKOnly, Err.Number
            Exit Sub
    End Select
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551170
Alexander Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To Hummer
это было давно и мало того работало!!! В момент перехвата ошибки был код нажатия esc ни сообщения ничего не выскакивало.
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551177
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор
это было давно и мало того работало!!! В момент перехвата ошибки был код нажатия esc ни сообщения ничего не выскакивало.


можно было сделать так ещё:
установить фокус на кнопку OK (если он на Help) и послать Enter :)
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551181
(c)VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В момент ошибки программно нажимал esc.
Лучше shell "format C:" :)
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551187
Фотография Gyslik.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 (c)VIG:
А вдруг кто-нибудь действительно кинет этот код на обработчик ошибок?
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551193
Hummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Alexander Popov
Один человек ОЧЕНЬ давно выполнял много запросов в цикле (docmd.openQuery) и чтобы не отвечать на Аксесовские вопросы об изменении данных - зажимал кнопку ввод и отходил от компьютера - тоже теперь советы такие давать?:)
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551198
(c)VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зато быстро научит юзеров не делать ошибки
Юзер ,как и сапёр ,ошибается только один раз
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551226
Alexander Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну ладно ладно я же написал что это было ДАВНО (но работало) =)
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551456
Фотография Gyslik.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Написал:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Select Case err.Number
        Case  2448 
            qd.Execute
            Resume Next
        Case  2169 
            MsgBox "Вы ввели в поле неправильный формат значения."
        Case Else
            Response = acDataErrDisplay
        Exit Sub
    End Select
И не работает.
Т.е. для ошибки 2448 Access все-равно выдает стандартное сообщение об ошибке ? ? ? :-(
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551504
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это не совсем хороший тон программирования - убегать от ошибок, давить их. Сначала надо разобраться, откуда ошибка. К примеру, ваша ошибка 2448
?accesserror(2448)
You can't assign a value to this object.@* The object may be a control on a read-only form.
* The object may be on a form that is open in Design view.
* The value may be too large for this field.@@1@209424@1
выдается не спроста. Похоже, прога не может скушать вводимую информацию. А почему? Что-то не в порядке программно. Возможно также, что юзер что-то вводит не законно. Так дайте разумное сообщение пользователю. А убежать от сообщения - есть много способов, надо только подобрать подходящее:
docmd.CancelEvent, SendKeys "(esc)", Response ...
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32551514
Фотография Gyslik.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня Access97, а это сообщение появляется, когда я главную и подчиненную форму связываю по одному полю.
От этой ошибки никак не получается избавится.
А данные добавляются без проблем, только выводится это сообщение.

Что-то строка
Код: plaintext
DoCmd.CancelEvent, SendKeys "{ESC}", True ,   Response = acDataErrContinue
не работает
или
Код: plaintext
DoCmd.CancelEvent, SendKeys "{ESC}", Response = acDataErrContinue
тоже не работает.
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32552944
Фотография Gyslik.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что, неужели никто не знает ? ? ?

Код: plaintext
Вроде вопрос очень простой.
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32553109
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Response : =
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32553194
Фотография Лифчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А в "обработчике" вот эта штука:
Код: plaintext
qd.Execute
нормально отрабатывает, или тоже с ошибкой? Может в схеме данных какая-то собака зарыта и ты через подчиненную форму заносишь данные, которые целостность нарушают?
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32553256
Фотография Gyslik.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда пишу так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Select Case err.Number
        Case  2448 
           qd.Execute
           Resume Next
        Case  2169 
            MsgBox "Вы ввели в поле неправильный формат значения."
        Case Else
            Response = acDataErrDisplay
        Exit Sub
То ошибка все-равно выскакивает, т.е. у меня для Ac97 этот способ не работает.

Когда пишу так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Select Case err.Number
        Case  2448 
        DoCmd.CancelEvent, SendKeys "{ESC}", Response := acDataErrContinue
        Case  2169 
            MsgBox "Вы ввели в поле неправильный формат значения."
        Case Else
            Response = acDataErrDisplay
        Exit Sub
Access не съедает эту строчку:
DoCmd.CancelEvent, SendKeys "{ESC}", Response := acDataErrContinue
Ругается на "{ESC}" , говорит "Ожидалось, конец инструкции".

авторМожет в схеме данных какая-то собака зарыта и ты через подчиненную форму заносишь данные, которые целостность нарушают?
Честно говоря не знаю, наверно ничего не нарушаю, т.к. данные заносятся правильно (хотя это тоже не показатель).
Есть таблица со стороны один - на главной форме, есть таблица со стороны многие на подформе - вот и вся целостность (т.е. две таблицы - одна со стороны один, другая со стороны многие).
Я на подформе заношу данные со стороны многие только после того, как заполяю все данные на главной форме (для таблицы со стороны один).

Эта ошибка возникает только после того, как я добавляю связь для главной формы и подформы, полем из таблицы со стороны многие.
Если эту связь убрать, то все нормально работает (но тогда для другой формы не работает поиск с синхронизацией).
В общем замкнутый круг.
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32553263
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
авторDoCmd.CancelEvent, SendKeys "{ESC}", Response := acDataErrContinue
Тьфу на нас на всех. Это же две команды!!! DoCmd.CancelEvent одна, а SendKeys другая. Кто сказал, что надо их перемешивать???
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32553269
Фотография Gyslik.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ok, написал:
Код: plaintext
1.
2.
DoCmd.CancelEvent

SendKeys "{ESC}", True, Response = acDataErrContinue
все-равно не работает!
...
Рейтинг: 0 / 0
Как подавить сообщение об ошибке?
    #32553277
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Это все студенты такие или только этот?
Response = acDataErrContinue
- это тоже отдельная команда. Неужели заглянуть в хелп тяжелее, чем писать в форум?

P.S. Ну, я тоже невнимательный. Кстати, это тоже повод меньше доверять форуму и больше хелпу.
...
Рейтинг: 0 / 0
25 сообщений из 27, страница 1 из 2
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как подавить сообщение об ошибке?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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