Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Результат запроса в значение по умолчанию поля формы.
 
 автор: OlegZa   (30.07.2009 в 13:30)   личное сообщение
 
 

Подскажите плз.
Имею форму. В ней Поле. В значение по умолчанию данного поля пишу "= [Запрос1]![Сумма]"
На формулу не ругается, но в результате в поле выдаёт ошибку "#Имя?".
Почему?
Что не так???
Запрос есть.
Поле такое в нём (единственное) тоже.
Подскажите кому не лениво.
Элементарщина, ведь, какая-нибудь наверняка.

  Ответить  
 
 автор: Mikimaus   (30.07.2009 в 16:42)   личное сообщение
 
 

Так у вас ничего не получится если есть возможность сделайте так чтобы форма содержала сам запрос т.е. в источнике записей был запрос и потом добавте поле сумма

  Ответить  
 
 автор: osmor   (30.07.2009 в 18:07)   личное сообщение
 
 

используйте dblookup

  Ответить  
 
 автор: OlegZa   (31.07.2009 в 08:24)   личное сообщение
 
 

Если добавить сам запрос в источник данных формы - она перестаёт быть обновляемой (новую запись не добавить).
А насчет DlookUp - чего DlookUp-ить то? Одно значение всего в запросе. По какому полю отбирать???
Не догоняю?..???!

  Ответить  
 
 автор: osmor   (31.07.2009 в 08:45)   личное сообщение
 
 

Help по dlookUp читали?


Функция DLookup возвращает значение конкретного поля в указанном наборе (подмножестве) записей. Функцию DLookup используют в программах на Visual Basic, макросах, в выражениях в запросах, а также для определения вычисляемого элемента управления в форме или отчете.
Допускается использование функции DLookup для вывода значения поля в случае, когда это поле не принадлежит к базовому источнику записей формы или отчета. Предположим, например, что базовой таблицей формы является таблица «Заказано». В форме выводятся поля «КодЗаказа», «КодТовара», «Цена», «Количество» и «Скидка». Однако поле «Марка» находится в другой таблице, «Товары». В этом случае функция DLookup позволяет создать в этой форме вычисляемое поле, в котором будет выводиться значение поля «Марка».

Синтаксис

DLookup(выражение, набор[, условие])

Функция DLookup использует следующие аргументы.

Аргументы Описание
выражение Выражение, определяющее нужное поле. Данный аргумент может задаваться строковым выражением, определяющим поле в таблице или запросе, или представлять выражение, задающее выполнение вычислений над данными, содержащимися в поле. Допускается использование в аргументе выражение имени поля в таблице или элемента управления в форме, константы, а также встроенной или определяемой пользователем функции. Не допускается использование в аргументе выражение других статистических функций по подмножеству или статистических функций SQL.
набор Строковое выражение, определяющее набор записей, образующих подмножество. Может представлять имя таблицы или запроса.
условие Необязательное строковое выражение, ограничивающее диапазон данных, в которых производится поиск значений. Например, аргумент условие часто является эквивалентом предложения WHERE инструкции SQL, но без ключевого слова WHERE. Если аргумент условие опущен, DLookup выполняет действия над полем, заданным в аргументе выражение, для всего набора записей. Любое поле, указанное в аргументе условие, должно принадлежать подмножеству, заданному аргументом набор; в противном случае функция DLookup возвращает значение Null.

  Ответить  
 
 автор: snipe   (31.07.2009 в 08:48)   личное сообщение
 
 

вариантов 2....
1. от DLookUp - ить запрос .....
2. воспользоваться DSum к таблице......

добавлено....
пока писал osmor уже ответил

  Ответить  
 
 автор: OlegZa   (31.07.2009 в 12:45)   личное сообщение
 
 

Скажите, а обратиться к запросу программно - не правильнее будет? Обратиться, считать данные из поля в переменную, на открытие формы повесить Me! Поле1 = переменная...
Или к запросу программно не обратиться? (Как открыть - знаю, а вот как на поле сослаться? Рекордсетом только? Пробовал просто имя поля прописать - ругается).

Боюся я как-то этого "Длук-Апа".
Или - если значение одно - так не так и долго Длукапит?
Попробую.
Спасибо, что не дали пропасть...

  Ответить  
 
 автор: snipe   (31.07.2009 в 13:27)   личное сообщение
 
 

а чего его бояться.....
= DLookUp("[сумма]";"[запрос1]")

все

  Ответить  
 
 автор: osmor   (31.07.2009 в 14:35)   личное сообщение
 
 

иначе только через рекордсет
если строка одна, то можно не явно
CurrentProject.Connection.Execute("имяЗапроса").Fields(0)

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList