[Access] Formular öffnen mit 4 verschiedenen Kriterien

sbambas

Grünschnabel
Hallo zusammen
ich möchte, dass beim öffnen des Formulars die 4 Kriterien berücksichtigt werden. Wenn ich 1 Kriterium wähle, dann funktioniert es. Sobald ich 2 wähle, passiert nichts.
mein Code:
Code:
Private Sub btn_frmKostenDatum_Click() 
    
    Dim strFilter As String 'Alle 
    Dim strFilter1 As String 'Kunde 
    Dim strFilter2 As String 'Auftragstyp 
    Dim strFilter3 As String 'BS 
    Dim strFilter4 As String 'System 
    
    On Error Resume Next 
    If Nz(Me.DatumVon, 0) = 0 Then 
    MsgBox "Bitte Datum Von eingeben!" 
    Me.DatumVon.SetFocus 
    Exit Sub 
    On Error Resume Next 
    ElseIf Nz(Me.DatumBis, 0) = 0 Then 
    MsgBox "Bitte Datum Bis eingeben!" 
    Me.DatumBis.SetFocus 
    Exit Sub 
    End If 
                
    strFilter = "" 
        
    If Len(Me.combo_kunde) > 0 Then 
        strFilter1 = "Kunde_ID = " & Me.combo_kunde 
    End If 
    
    If Len(Me.combo_Auftragstyp) > 0 Then 
        strFilter2 = "Auftragstyp_ID = " & Me.combo_Auftragstyp 
    End If 
    
    If Len(Me.combo_bs) > 0 Then 
        strFilter3 = "BS_ID = " & Me.combo_bs 
    End If 
    
    If Len(Me.combo_system) > 0 Then 
        strFilter4 = "System_ID = " & Me.combo_system 
    End If 

    strFilter = strFilter1 & strFilter2 & strFilter3 & strFilter4 
    
    DoCmd.OpenForm "frmlKostenAnzeigen", acFormDS, , strFilter 
    
End Sub
Danke für Eure Hilfe
Gruss
sbambas
 
Lösung:
strFilter = ""

If Len(Me.combo_kunde) > 0 Then
strFilter = "Kunde_ID = " & Me.combo_kunde
End If

If Len(Me.combo_Auftragstyp) > 0 Then
if strFilter <> "" Then strFilter = strFilter & " and "
strFilter = strFilter & "Auftragstyp_ID = " & Me.combo_Auftragstyp
End If

If Len(Me.combo_bs) > 0 Then
if strFilter <> "" Then strFilter = strFilter & " and "
strFilter = strFilter & "BS_ID = " & Me.combo_bs
End If

If Len(Me.combo_system) > 0 Then
if strFilter <> "" Then strFilter = strFilter & " and "
strFilter = strFilter & "System_ID = " & Me.combo_system
End If

DoCmd.OpenForm "frmlKostenAnzeigen", acFormDS, , strFilter
 

Neue Beiträge

Zurück