Я новичок в MS Access, и у меня возникли проблемы. Я создал запрос с двумя разными датами (скажем, x и y), а затем формулу для расчета дней между этими двумя датами - столбец C. Теперь я ищу только результаты, в которых критерии столбца c больше 30 , однако это создает ошибку, поскольку некоторые даты в x и y отсутствуют на уровне таблицы. Есть ли способ отловить эту ошибку перед запросом? Например, эквивалент iferror ("-") в Excel.

-1
ashattock 25 Сен 2020 в 17:32

1 ответ

Лучший ответ

Вы можете использовать DateDiff и фильтр для Not Null , чтобы игнорировать эти записи:

Select * 
From YourTable
Where 
    DateDiff("d", [x], [y]) > 30 
    And 
    [x] Is Not Null And [y] Is Not Null

Если это все еще не удается, используйте Nz :

Select * 
From YourTable
Where 
    DateDiff("d", Nz([x], Date()), Nz([y], Date())) > 30 
    And 
    [x] Is Not Null And [y] Is Not Null
0
Gustav 25 Сен 2020 в 15:05