Какие символы подстановки я могу использовать для формы Microsoft Access, запрашивая месяц и год?

466
Karl

Я сделал базу данных Access, которая включает даты. У меня есть отчет, связанный с запросом, который при открытии запрашивает у пользователя номер месяца (1-12), чтобы создать отчет за эти месяцы. Например, если я наберу 4, я получу отчет за апрель. Проблема в том, что иногда мне нужен полный отчет за все месяцы, и я считаю, что мне нужно набрать в этом поле шаблон, чтобы получить его. Я пробовал *,?, #,%, "1-12" и "1,2,3 ..., 12", но ничего не получилось, я просто получил пустой отчет.

Вот изображение подсказки:

enter image description here

2
Как генерируется подсказка? Подсказка в запросе или в отчете? что произойдет, если вы оставите это поле пустым и нажмете ОК? CharlieRB 8 лет назад 0
Он генерируется путем записи [подсказка] в поле критериев при создании запроса. Поскольку отчет приходит из этого запроса, он также запрашивает у пользователя ту же информацию. Если вы оставите это поле пустым, вы получите пустой отчет. Karl 8 лет назад 0

2 ответа на вопрос

1
Pointer

Create a separate report for "All months":

  1. Duplicate the existing report.
  2. In the new report, remove the prompt and filter.
Хотя это обходное решение, я не думаю, что оно действительно отвечает на вопрос ОП. CharlieRB 8 лет назад 0
Это может быть последний вариант ответа. Я надеюсь, что кто-то может помочь мне решить проблему, не нуждаясь в 2 докладах. Karl 8 лет назад 1
1
CharlieRB

Since the prompt is coming of the criteria for the query itself, then you need to modify the query, not the report.

Using Is Null and Is Not Null in a new expression you can tell Access to either use the given criteria or return all records.

  1. Copy your criteria and paste it in the top Field of a new column (Note: you do not need to include the Expr1: seen in my example below. Access will add that for you.)
  2. Uncheck the Show box.
  3. In the first criteria adjacent to your prompt, type Is Not Null.
  4. Then in the or field below it type Is Null.

It should look something like this:

enter image description here

Now you can either enter a number or leave it blank. If you leave it blank, it will return all records found by the query.

Я не уверен, как, но это работает как шарм. Большое спасибо. Karl 8 лет назад 0
Рад помочь. Это просто проверка состояния выражения. Если в выражении есть данные, они используют их для фильтрации ваших результатов. Если в выражении нет данных (null), он использует критерий `или`, который не должен ничего фильтровать. CharlieRB 8 лет назад 1