2017-02-21 99 views
0

我正在開發一些MS Access報告;其中一個需要知道某個特定的日期/時間字段是否爲空,另一個則相反。我試着在報表屬性表的數據選項卡Filter屬性如下:如何在MS Access報告中按日期/時間過濾?

IsNull(Assets.[Sales Date Seller Paid]) 

當我看的報表視圖,日期/時間的項目往往是空的,但實際的日期值顯示爲好。

Report showing invalid date/time data

上午我在正確的軌道?

+0

我只使用,如果我有一個報告,我希望過濾器動態更改。通常我會將任何永久過濾添加到報告的記錄源。 – SunKnight0

+0

您可以在報告頂部添加一個按鈕,將過濾器切換爲空或非空(選項或複選框,或...) –

回答

0
在訪問

IsNull功能與別的東西代替空值(指定爲函數的第二個參數,但離開這個空白將返回不知道? - 可能取決於第一個參數的數據類型) 。無論如何,你真正需要的是:

Assets.[Sales Date Seller Paid] Is Null 

是的,正如@ SunKnight0說,這將可能是更好地包括在基礎查詢。

+0

您確定您沒有考慮過'Nz()'嗎? 'IsNull'應該測試一個表達式是否爲null並且返回一個布爾值。它不會替換任何值。我同意,'是空'是去這裏的正確方法。 – Brad

+0

糟糕! SQL Server在那裏爬行。感謝您的更正。在這種情況下,爲什麼'IsNull'不能完成這項工作? – Skippy

+0

這是一個用於測試變量是否爲空的VBA表達式(類似於對於對象的「無」)它不是真正的「訪問」函數,因爲完整的函數是'VBA.Information.IsNull()',它確實是一個VBA事情。因爲column爲null與變量爲null不同,所以它不是要使用的東西。至於*爲什麼*是這種情況....我不知道。 – Brad