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

Введенное значение не подходит для данного поля

22.05.2019, 08:50. Показов 9234. Ответов 61
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!

На главной форме создал свободные поля, которым присвоил значение полей подчиненной формы.
При открытии глав формы выдается ошибка "Введенное значение не подходит для данного поля". Нажимаю Debug, перехожу на проблемную строку, ей присваивается Null.
Присвоение сделал через режим - программы в событии, изначально было через режим - выражение и выдавало #ошибку.

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

СкАжите, что надо в бд добавить записи и на этом успокоится, но не...
Решил, что нужно сделать проверку на наличие значений (не знаю как правильно, на пустоту или инициализацию) в свободных полях.
Пробовал на null, empty, nothing.

Не в курсе возможно эта ошибка норма для данной ситуации. И это только можно обработать обработчиком ошибок или событием error.
Хочу разобраться,

Заранее спасибо.

Добавлено через 4 минуты
Visual Basic
1
2
3
4
5
Private Sub Form_Current()
        
        Me.[Поле2] = Me.[PF_DOKUMENT]![Номер]
        Me.[Поле4] = Me.[PF_DOKUMENT]![Дата]
        Me.[Поле6] = Me.[PF_DOKUMENT]![Владелец]
Visual Basic
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
Private Sub Кнопка11_Click()
    On Error GoTo Err_Кнопка11_Click
 
        Dim stDocName As String
        Dim stLinkCriteria As String
        
        stDocName = "DOKUMENT"
        
        If Me.[Поле2] Is Not Null Then      'проверка на инициализацию Me.[Поле2]
                                        'если она существует открывается форма
            stLinkCriteria = "[NOMER]=" & "'" & Me![Поле2] & "'"
            DoCmd.OpenForm stDocName, , , stLinkCriteria
            
        Else   'иначе выдается ошибка
        
            Dim alert, msg, style, title As String
            
            msg = "Ни одной записи нет в базе данных! Нажмите кнопку " & Chr(171) & "Новая карточка " & Chr(187) & " для того, чтобы создать новую запись."
            style = vbOKOnly + vbExclamation
            title = "Сообщение об ошибке"
        
            alert = MsgBox(msg, style, title)
            
        End If
    
Exit_Кнопка11_Click:
Exit Sub
 
Err_Кнопка11_Click:
    MsgBox Err.Description
    Resume Exit_Кнопка11_Click
    
End Sub
как-то так
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.05.2019, 08:50
Ответы с готовыми решениями:

Введенное значение не подходит для данного поля
Собственно сабж :( Не могли бы помочь? При выборе в Форме даты начала курса пишет такую вот фигню, не могу понять из-за чего :( бд:...

Ошибка: Введенное значение не подходит полю формы
Коллеги. Есть форма "Данные". Пытаюсь сделать так, чтобы при выборе "Экспедитор" выбирались телефон и адрес. Делаю это с помощью...

Получение числа с поля Entry! Или как вообще получить число введенное пользователем с поля GUI?
Как получить число которое пользователь ввел в поле для ввода в графическом интерфейсе? Например есть простейшая программа (без GUI)для...

61
Мы один, давай на "ты"
3858 / 1400 / 348
Регистрация: 16.06.2016
Сообщений: 3,300
22.05.2019, 13:54
Студворк — интернет-сервис помощи студентам
Арт_, что за акцесс установлен?

Добавлено через 2 минуты
Цитата Сообщение от Арт_ Посмотреть сообщение
Visual Basic
1
2
3
4
5
Private Sub m_frmSub_Current()
Me.[поле2] = Me.[PF_DOKUMENT].Form![номер]
Me.[ГЏполе4] = Me.[PF_DOKUMENT].Form![дата]
Me.[поле6] = Me.[PF_DOKUMENT].Form![владелец]
End Sub
Это код не из примера. Поля не так называются.
0
1 / 1 / 0
Регистрация: 24.05.2017
Сообщений: 270
22.05.2019, 14:03  [ТС]
файл в .aacdb, сейчас в 2007 сижу, на работе 2010.
Цитата Сообщение от Панург Посмотреть сообщение
Это код не из примера. Поля не так называются.
".Form" добавил, но результ, что с ним, что без одинаков.
0
Мы один, давай на "ты"
3858 / 1400 / 348
Регистрация: 16.06.2016
Сообщений: 3,300
22.05.2019, 14:16
Цитата Сообщение от Арт_ Посмотреть сообщение
".Form" добавил, но результ, что с ним, что без одинаков.
нет, не только
Вложения
Тип файла: zip test.zip (29.3 Кб, 6 просмотров)
1
1 / 1 / 0
Регистрация: 24.05.2017
Сообщений: 270
22.05.2019, 14:43  [ТС]
все та же ошибка
0
Мы один, давай на "ты"
3858 / 1400 / 348
Регистрация: 16.06.2016
Сообщений: 3,300
22.05.2019, 16:29
Арт_, у тебя явно проблема с Access. Пример точно рабочий.
Ты пробовал отследить ошибку? Что пишет в окне immediate? В процедурах есть обработчики ошибок, т.ч. выводить ошибки в сообщениях не должен.
0
 Аватар для VinniPuh
9147 / 6176 / 594
Регистрация: 27.03.2013
Сообщений: 20,046
22.05.2019, 17:52
Чё это за символ в третьей строчке, перед - поле4?
0
1 / 1 / 0
Регистрация: 24.05.2017
Сообщений: 270
23.05.2019, 01:11  [ТС]
Цитата Сообщение от VinniPuh Посмотреть сообщение
Чё это за символ в третьей строчке, перед - поле4?
Это я неудачно скопировал сюда, в коде без этих символов

Добавлено через 6 минут
Цитата Сообщение от Панург Посмотреть сообщение
Ты пробовал отследить ошибку? Что пишет в окне immediate? В процедурах есть обработчики ошибок, т.ч. выводить ошибки в сообщениях не должен.
В этом не проф, но уже как говорил может просто перехватить ошибку и пропускать ее.
0
Мы один, давай на "ты"
3858 / 1400 / 348
Регистрация: 16.06.2016
Сообщений: 3,300
23.05.2019, 03:55
Арт_, мы разговариваем как не с друг с другом...
Цитата Сообщение от Панург Посмотреть сообщение
В процедурах есть обработчики ошибок, т.ч. выводить ошибки в сообщениях не должен.
Цитата Сообщение от Арт_ Посмотреть сообщение
может просто перехватить ошибку и пропускать ее.
Ошибки идут и с моим примером? Или ты про свою бд говоришь? Если ошибки сыпятся с моего пример, то
Цитата Сообщение от Панург Посмотреть сообщение
у тебя явно проблема с Access. Пример точно рабочий.
или одно из двух...
0
Эксперт MS Access
 Аватар для alvk
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
23.05.2019, 04:23
Цитата Сообщение от tkrainyk Посмотреть сообщение
В Access 2010 и так работает. Вы видно привыкли работать еще c Access 00
Мне не важно какой Акцесс, правила существуют для всех. Буквально недавно говорили о том, что сейчас некоторые кичатся своей безграмотностью, вы видимо один из них. Успехов.

Добавлено через 8 минут
Цитата Сообщение от Арт_ Посмотреть сообщение
".Form" добавил, но результ, что с ним, что без одинаков.
Выкладывайте пример, где не работает.
0
1 / 1 / 0
Регистрация: 24.05.2017
Сообщений: 270
23.05.2019, 05:41  [ТС]
Панург, у Вас все рабочее, не думаю, что дело в Access.
0
1 / 1 / 0
Регистрация: 24.05.2017
Сообщений: 270
23.05.2019, 05:45  [ТС]
база с Вашими наработками.
Вложения
Тип файла: rar test_v1.8.rar (49.3 Кб, 2 просмотров)
0
Мы один, давай на "ты"
3858 / 1400 / 348
Регистрация: 16.06.2016
Сообщений: 3,300
23.05.2019, 06:04
Лучший ответ Сообщение было отмечено Арт_ как решение

Решение

Арт_,
Вложения
Тип файла: zip test_v1.81.zip (70.4 Кб, 2 просмотров)
1
Мы один, давай на "ты"
3858 / 1400 / 348
Регистрация: 16.06.2016
Сообщений: 3,300
23.05.2019, 06:09
Цитата Сообщение от alvk Посмотреть сообщение
правила существуют для всех.
Правила для того и нужны чтобы их нарушать и не делать из них догматов.
Кстати о каком правиле речь идёт?

Режим питания нарушать нельзя! ©
0
1 / 1 / 0
Регистрация: 24.05.2017
Сообщений: 270
23.05.2019, 06:19  [ТС]
Панург, спасибо, а в чем косяк был?
Но все же хотелось решение без
Visual Basic
1
Private WithEvents m_frmSub As Access.Form
и навешивания на него события, а то для меня это еще рано. И код поддерживать сложнее, который плохо понимаешь.
0
Мы один, давай на "ты"
3858 / 1400 / 348
Регистрация: 16.06.2016
Сообщений: 3,300
23.05.2019, 06:34
Цитата Сообщение от Арт_ Посмотреть сообщение
Но все же хотелось решение без
Зачем? Это постоянная ссылка на субформу. Ничего страшного нет. Единственное - нужно чтобы были обработаны все исключения иначе слетают все подобные ссылки (уровня модуля, глобальные).

Добавлено через 2 минуты
Цитата Сообщение от Арт_ Посмотреть сообщение
а в чем косяк был?
код внимательно посмотри, особенно событие Current. Поставь точку останова там, протрассируй код (F8).
1
1 / 1 / 0
Регистрация: 24.05.2017
Сообщений: 270
23.05.2019, 06:54  [ТС]
Цитата Сообщение от Панург Посмотреть сообщение
код внимательно посмотри
Понял, не обратил внимания (код еще толком не изучил).
А где происходит блокировка сабформы (удал, добав, изм.)?
0
Мы один, давай на "ты"
3858 / 1400 / 348
Регистрация: 16.06.2016
Сообщений: 3,300
23.05.2019, 07:07
Цитата Сообщение от Арт_ Посмотреть сообщение
А где происходит блокировка сабформы (удал, добав, изм.)?
Это ты сам запретил делать в редакторе свойств формы (которая стоит как подчинённая).
Миниатюры
Введенное значение не подходит для данного поля  
1
1 / 1 / 0
Регистрация: 24.05.2017
Сообщений: 270
23.05.2019, 07:31  [ТС]
Может это изменил предыдущий код, но я все разрешения в vba запрещал. Разберусь.
А зачем
Цитата Сообщение от Панург Посмотреть сообщение
Это постоянная ссылка на субформу
В кратце можете пояснить, в интернете почитал, смутно описано.
Visual Basic
1
Private WithEvents m_frmSub As Access.Form
Visual Basic
1
Private Sub Form_Load()
Добавлено через 12 минут
Даже бы сказал, что все понятно (более-менее), но без этого можно было осуществить задуманное?
0
Мы один, давай на "ты"
3858 / 1400 / 348
Регистрация: 16.06.2016
Сообщений: 3,300
23.05.2019, 07:45
Арт_, Это сделано для того чтобы управление было сосредоточено в одном месте. При изменении текущей записи в субформе происходит управление свойствами главной формы - изменение значения полей, доступности кнопок и прочего если будет. Причём изменение текущей записи может произойти, как из кода (фильтрация), так и пользователем тыкающим по записям субформы мышой (например). Процедура события может исполнятся и из кода (см. Form_Load). Кстати добавь
Visual Basic
1
2
3
4
5
6
7
8
9
Private Sub FilterAndSort()
...
m_frmSub.FilterOn = (Len(sFilter) > 0)
Call m_frmSub_Current' при изменении фильтра изменится и текущая запись, нужно чтобы выполнилась процедура
 
'сортировка
m_frmSub.OrderBy = IIf(Me!sortingSwitches, "nomer ASC", "nomer DESC")
...
End Sub
1
1 / 1 / 0
Регистрация: 24.05.2017
Сообщений: 270
23.05.2019, 08:11  [ТС]
Панург, спасибо Вам!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.05.2019, 08:11
Помогаю со студенческими работами здесь

Для данного вещественного х найти значение следущей функции f, принимающей значение целого типа:
0, если х<0, f(x) = 1, если принадлежит[0,1),[2,3),..., -1, если х принадлежит [1,2),[3,4), ... .

Значение поля 2 является именем для поля 1 ( Сформировать JSON объект)
Коллеги, подскажите как решить или где посмотреть следующую информацию. У меня есть таблица: ID Fio Month Parametr ...

Введенное значение для одного из аргументов имеет ошибочный тип данных
Привет всем. Имеется БД Access 2003 в ней таблица НАИМЕНОВАНИЕ_ТОВАРА в таблице колонка НаименованиеТовара и другие колонки. Из VBA...

Для данного x вычислить значение функции:
Для данного x вычислить значение функции:

Вычислить значение для данного задания
Вычислить данное значение


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Транскрипция 55-минутного видео через Whisper: WhisperDesktop облажался, спас Google Colab[
anaschu 01.06.2026
Понадобилось получить текст из свежезагруженного видео на YouTube. Казалось бы, задача на пять минут. Заняла полтора часа. Делюсь опытом — может кому пригодится последовательность решений. . . .
21 мат мед. Планы на развитие модели здравоСохранения
anaschu 01.06.2026
AnyLogic: план развития симуляционной модели рабочего коллектива — динамический абсентеизм, реальные данные, три сценария сравнения Продолжаю серию постов о дискретно-событийной модели рабочего. . .
20. Мат мед. Абсентеизм как отдельный тип простоя
anaschu 29.05.2026
Апдейт модели: исправленные баги, абсентеизм и новые механизмы Продолжаю развивать ранее описанную модель рабочего коллектива на AnyLogic. За последние несколько дней был проведён серьёзный. . .
19. здоровье, усталость и психотип работника влияют на производительность предприятия, и наоборот, производительность на здоровье, усталось и психотип
anaschu 28.05.2026
Дискретно-событийная модель рабочего коллектива на AnyLogic: здоровье, выгорание, психотипы и микростимуляция Привет, коллеги. Хочу поделиться итогами нескольких недель работы над симуляционной. . .
"Прокси" для последовательного порта
Eddy_Em 28.05.2026
Эту штуку написал я достаточно давно. Но сейчас вот понадобилось настроить датчик грозы, но при этом не отключать его от "метеодемона". Соответственно, надо запустить этот "прокси": метеодемон будет. . .
Рефакторинг программы уравнивания.
Massaraksh7 26.05.2026
Пример по предыдущей записи в блоге. Но, надо заметить, что, во-первых, там оптимизация не только математики, но и работы с базой данных, и с графами, а во-вторых, это ещё не всё.
Использование TThread в Lazarus для математических вычислений.
Massaraksh7 25.05.2026
Производя рефакторинг своих программ на предмет ускорения их работы, обратил внимание на такой аспект, как сокращение времени матвычислений. Дело в том, что приходится работать с большими матрицами. . .
Модель здравосохранения 18. Чем здоровее работник, тем быстрее выгорает
anaschu 24.05.2026
Имитационная модель корпоративного здравоохранения: что показывает математика Сегодня в модели рабочего коллектива на AnyLogic появились три новые механики — выгорание через накопленную усталость,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru