powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Автоматическое заполнение полей.
16 сообщений из 16, страница 1 из 1
Автоматическое заполнение полей.
    #32468011
Фотография Gyslik.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня есть таблица с уже забитыми данными, с полями "поле_1", "поле_2", "поле_3", ..., "поле_n".
Мне нужно, чтобы пользователь вводил информацию, только в "поле_1" (у "поле_1" тип данных - числовой), и в зависимости от введенных данных в "поле_1" автоматически должны заполняться все остальные поля т.е. "поле_2", "поле_3", ..., "поле_n" (в общем эти поля не для заполнения, а только для просмотра, а в форме пользователь заполняет только "поле_1").
Подскажите, пожалуйста, как это сделать?
:-)
...
Рейтинг: 0 / 0
Автоматическое заполнение полей.
    #32468015
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Один из способов: у всех полей кроме первого делаем ControlSource с функцией Dlookup и на AfterUpdate первого поля пишем Me.Recalc.
...
Рейтинг: 0 / 0
Автоматическое заполнение полей.
    #32468018
e_basil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
откуда брать данные для подстановки?

думается в [поле_1] вводится параметр, после которого
(поле_1_AfterUpdate() ?)
выполняется запрос и остальные поля получают значения из автортаблица с уже забитыми данными
...
Рейтинг: 0 / 0
Автоматическое заполнение полей.
    #32468020
Фотография Gyslik.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 ВС:
А можно немножко поподробнее?
...
Рейтинг: 0 / 0
Автоматическое заполнение полей.
    #32468026
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Первое поле с пустым ControlSource'ом. У остальных ControlSource такого вида:

=dlookup("полеN", "таблица", "поле1=" & cstr(поле1))

где:
полеN - данное поле
поле1 - первое поле
...
Рейтинг: 0 / 0
Автоматическое заполнение полей.
    #32468886
Фотография Gyslik.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пишу:
=dlookup("полеN", "таблица", "поле1=" & cstr(поле1))
и так пишу и сяк пишу и в Help посмотрел - все правильно, а Access пишет:
ошибка синтаксиса во введенном выражении ? ? ? ? ? ? ? ? ? ? ?
Подскажите, PLEASE. (Использую Ac97).
...
Рейтинг: 0 / 0
Автоматическое заполнение полей.
    #32468915
e_basil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
повторимся еще раз
строковые значения необходимо заключать в одиночные кавычки ( ' )

должно быть так

Код: plaintext
=dlookup( "полеN" ,  "таблица" ,  "поле1='" & cstr(поле1) & "'" ) 


но в данном случае возникает вопрос:

Gyslikтолько в "поле_1" (у "поле_1" тип данных - числовой),

значит строка авторcstr(поле1) - ошибочна

конструкция должна выглядеть так:

Код: plaintext
=dlookup( "полеN" ,  "таблица" ,  "поле1="  & поле1) 


а лучше так:

Код: plaintext
=dlookup( "полеN" ,  "таблица" ,  "поле1="  & Nz(поле1))  
...
Рейтинг: 0 / 0
Автоматическое заполнение полей.
    #32468931
Фотография Gyslik.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 e_basil:
Спасибо, попробую :-)
...
Рейтинг: 0 / 0
Автоматическое заполнение полей.
    #32469023
Фотография Gyslik.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, на всякий случай: знак = перед dlookup писать не надо.
:-)
...
Рейтинг: 0 / 0
Автоматическое заполнение полей.
    #32469078
e_basil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если в качестве источника данных для контрола - то надо
...
Рейтинг: 0 / 0
Автоматическое заполнение полей.
    #32469188
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
2 e_basil:
В исходном вопросе сказано: у "поле_1" тип данных - числовой. Так что никакие кавычки тут не нужны!

2 Gyslik:
Не нужны там кавычки. Возможно, вместо запятой придется поставить точку с запятой.
...
Рейтинг: 0 / 0
Автоматическое заполнение полей.
    #32469195
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
2 e_basil вдогонку:

Что значит строка cstr(поле1) ошибочна? Сударь не знает, что такое cstr? Это функция, которая превращает числовое значение в строковое. Если сударь полагает, что cstr надо брать от строковых значений, то он сугубо заблуждается.
...
Рейтинг: 0 / 0
Автоматическое заполнение полей.
    #32469263
e_basil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1
Владимир Саныч В исходном вопросе сказано: у "поле_1" тип данных - числовой.
2
Владимир СанычСударь не знает, что такое cstr? Это функция, которая превращает числовое значение в строковое
3
2Владимир Саныч
поясните пожалуйста, зачем Cstr() для числового поля с числовым значением

Владимир Саныч=dlookup("полеN", "таблица", "поле1=" & cstr(поле1))

зы оно может и не помешает, но вполне можно обойтись без нее
...
Рейтинг: 0 / 0
Автоматическое заполнение полей.
    #32469280
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
e_basilзачем Cstr() для числового поля с числовым значением
Для того, чтобы это числовое значение включить в стринг. Можно и обойтись и положиться на то, что Аксесс сам преобразует число к строковому типу, но надежнее такие преобразования всегда делать явно.
...
Рейтинг: 0 / 0
Автоматическое заполнение полей.
    #32469304
e_basil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Аксесс вполне сможет сам преобразовать число к нужному типу.

надеюсь, сударь, что до дуэли, дело не дойдет :))
...
Рейтинг: 0 / 0
Автоматическое заполнение полей.
    #32469314
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Сам, конечно, сможет. Но явным образом надежнее.

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


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