제품 표가 포함 된 ADO 레코드가 있습니다. 내가 표를 필터링하는 데 사용되는 제품의 목록을 가지고 - 동적으로 (그러나 더 이상)와 같은 필터를 구축 :ADO 레코드 집합으로 필터링 된 항목을 보완하십시오.
rs.Filter = "productType = 'product A' " _
+ "or productType = 'product B' " _
+ "or productType = 'product C' "
이 나를 위해 잘 작동, 나는, 별도의 워크 시트에 모든 벌금을 필터링 된 행을 복사.
그런 다음 새로운 프로젝트 요구 사항은 을 제외하고 항목을 제외해야한다는 것을 의미했습니다. 음, 부울 대수를 수행하고 반대 필터를 사용하여 동일한 쿼리를 실행했습니다.
rs2.Filter = "productType <> 'product A' " _
+ "and productType <> 'product B' " _
+ "and productType <> 'product C' "
이 또한 정상적으로 작동합니다. 제외 된 항목을 다른 워크 시트에 복사하므로 포함 된 항목과 제외 된 항목이 모두 있습니다.
하지만 새로운 요구 사항은 특별한 경우에 대처해야한다는 것을 의미합니다. 제품 B는 특정 날짜에만 포함됩니다. 이제이 긍정적 인 필터 잘 작동 찾을 수있는 하나 는 항목 포함 :
rs.Filter = "productType = 'product A' " _
+ "or (productType = 'product B' and expiry = 16/08/2013) " _
+ "or productType = 'product C' "
을하지만 부정적인 필터 (제외 항목을 찾을 수있는 하나의) 문제로 실행. restriction on nested OR's in ADO Recordset Filter으로 인해 다음은 허용되지 않습니다.
rs2.Filter = "productType <> 'product A' " _
+ "and (productType <> 'product B' or expiry <> 16/08/2013) " _
+ "and productType <> 'product C' "
대체 솔루션이 있습니까? 예. 필터의 보완법을 얻는 방법 (즉 제외하는 행)은 무엇입니까?
내가 포함해야 할 제품 목록이 동적으로 작성되었으므로 코드 작성시 사용할 수 없습니다.
'전체 포함 필터'가 허용됩니까? –