2016-05-18 53 views
0

我在訪問中使用下面的代碼。如果,那麼,在訪問其他功能

我試圖設置它,使2個文本框不能留空,如果他們有日期,那麼它將繼續生成一個報告。

If IsNull(Me.txtStart.Value) Then 
    MsgBox "Please ensure that both date fields are populated" 
    Exit Sub 
ElseIf IsNull(Me.txtEnd.Value) Then 
    MsgBox "Please ensure that both date fields are populated" 
    Exit Sub 
Else 
End If 

預先感謝您

+0

什麼問題?如果任一文本框爲空,則代碼將不做任何處理。您不需要'Else'只需在if語句後添加使用這些值的代碼即可。 – ChrisF

+0

當我試圖運行與空白字段的報告,我得到的msgbox ,,但是當兩個文本框中的日期在msgbox仍然顯示,但它應該顯示報告 – Wolfie84367

回答

2

只需使用

If IsNull(Me.txtStart.Value) Or IsNull(Me.txtEnd.Value) Then 
    MsgBox "Please ensure that both date fields are populated" 
    Exit Sub 
End If 
' open the report here 

不需要的Exit Sub後使用Else

其實我更喜歡這種編碼風格的初始檢查大Else個案。

+0

您發佈的代碼的作品,但是當(me.txtStart.Value )文本框是空的,它不會將其識別爲空並運行報告。 – Wolfie84367

+0

@ Wolfie84367:'txtStart'應該是隻接受NULL(空)或日期的日期字段。不應該有任何含糊之處。通過爲文本框的「格式」屬性分配「日期」格式,這是最簡單的方法。 – Andre