#ms-access #expression
#ms-access #выражение
Вопрос:
В части моей формы базы данных, которую я создал, будет указано самое новое добавленное событие, а также следующие предстоящие 3 события, которые мы проводим. Однако я не могу понять, как заставить выражение dlookup возвращать правильные значения в поле формы.
Я использую следующее выражение для возврата последнего добавленного события:
=DLookup("[Event Name]","[Events]","[Event Date] = DMax('[Event Date]','[Events]')")
Что отлично работает для этого поля, переходя к предстоящим событиям, я искал выражение, в котором перечислены следующие 3 события
Я использую приведенное ниже, чтобы перечислить следующее событие
=DLookUp("[Event Name]","[Events]","[Event Date] >= now()")
Это снова работает нормально, однако проблема возникает при попытке перечислить события # 2 и # 3. Мне было интересно, возможно ли использовать выражение dlookup / переписать выражение, чтобы перечислить следующие 2 предстоящих события.
Я также создал новый запрос для перечисления всех событий после now () и думал использовать DCount и ссылаться на это вместо этого с помощью мода, однако я не могу найти правильные критерии
=DCount(" [View - Upcoming Events]![Event Name] "," [View - Upcoming Events]","[Event Name] <= amp; [Event Name]") Mod 2
=DCount(" [View - Upcoming Events]![Event Name] "," [View - Upcoming Events] "," [Event Name] <= " amp; [Event Name]) Mod 2
Это всегда будет возвращать #Name или #Error в зависимости от того, как я играю с кодированием. И я потерял свой большой список выражений.
Ответ №1:
В вашем (секретном) запросе вставьте инструкцию TOP 3, чтобы выбрать только три верхние записи, например:
Select TOP 3 [Event Name], [Event Date]
From [Events]
Where [Event Date] > Date()
Order By [Event Date] Asc
Комментарии:
1. Фантастика, это сузило топ-3 проще, чем вытаскивать все события, что позволило мне создать подчиненную форму для отображения этого! Идеальный