2017-12-07 5 views
0

私は2つの変数を持つコンボボックス用After_UpdateでAccessのVBA機能を持っています。最初のものはコンボボックスからのもので、2番目のものは最初のものに基づくクエリ結果です。 Null値を処理するためにエラー処理をいくつか作成しましたが、どの値がNULLであるかによって違う方法で処理したいと思います。場合によっては、コンボボックスに名前を入力して削除すると、変数Nullになります。もしchildIDがNullであれば、それは問題ではなく、関数を単純に終了したいと思います。 visitIDがNullの場合は、エラーメッセージボックスを表示します。私が思いついたのは、両方の変数からのNull値のエラーを表示します。VBAでは、同じエラーを異なる変数とは異なる方法で扱う方法はありますか?

On Error GoTo Error_Handle 

childID = Me.cmbChildSearchFirst.Column(0) 
visitid = DLookup("Visit.[VisitID]", "Q_VisitID_from_ChildID", "[ChildID] =" & childID) 

Error_Handle: 
If Err.Number = 94 Then 
    MsgBox ("Child is not associated with any visit") 
    Exit Sub 
End If 

答えて

1

基本概要:

childID = Me.cmbChildSearchFirst.Column(0) 

'proceed only if not null. 
If Not IsNull(childID) Then 
    If Not IsNull(DLookup("Visit.[VisitID]", "Q_VisitID_from_ChildID", "[ChildID] =" & childID)) Then 
     .... 
    Else 
     MsgBox ("Child is not associated with any visit") 
     Exit Sub 
    End If 
End If 
+0

これが答えに私を得ました。私は "On Error Resume Next"を含める必要があり、最初のif文を "If IsNull(childID)Then Exit Sub Else ..."に変更しなければならなかった。 –

+0

助けがあれば、この回答をUpvoteしてください。 Tnx。 https://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235 – wazz

関連する問題