2017-12-27 9 views
0

쿼리 작동이 제대로 작동합니다. 완료된 모든 트랜잭션을 나열합니다. 쿼리를 사용하는 양식에 취소 된 날짜가있는 모든 트랜잭션을 필터링하는 확인란을 추가하고 싶습니다. MS 액세스 - 확인란을 기반으로 쿼리 조건 변경

이 더 좋은 방법이 있나요 ....

=IIf(Forms![Show DPA List]![chkShowCanc] =true,"*","IsNull") 

그리고 나는 '이 표현이 잘못 입력 된'오류가 계속 :이 같은 쿼리에 CancelDate 컬럼에 대한 기준을 추가하려고했습니다 이걸 접근 해?

+0

표현식이 오류가 아니더라도 표현식이 날짜/시간 유형 필드에 텍스트 매개 변수를 반환하기 때문에 '데이터 유형 불일치'오류가 발생합니다. 나는 CancelDate가 날짜/시간 유형이라고 가정합니다. – June7

+0

동적 매개 변수가있는 쿼리를 절대 사용하지 마십시오. VBA를 사용하여 필터 조건을 작성하고 폼 필터 속성에 적용하는 것이 좋습니다. – June7

+0

전체 SQL 버전의 쿼리를 게시하여이 표현식이 어떻게 사용되는지 확인할 수 있습니다. 여기 – Parfait

답변

0

와일드 카드는 현장의 데이터와 그 반환, 다음은 오류가없는뿐 아니라 모든 레코드를 반환하지 않습니다

LIKE IIf([Forms]![Show DPA List]![chkShowCanc], "*", Is Null)

만 그 모든 기록이나 사이에서 선택하려면 null의 경우, 쿼리의 필드를 계산 :

F1: IIf([CancelDate] Is Null, "NoDate", "HasDate")

해당 필드에 필터 기준을 적용 :

LIKE IIf([Forms]![Show DPA List]![chkShowCanc], "NoDate", "*")