Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: lutschi83 am Juni 01, 2017, 10:22:53

Titel: Filtern mit mehreren Optionen
Beitrag von: lutschi83 am Juni 01, 2017, 10:22:53
Hallo,
ich habe folgenden Filter, der auch bedingt funktioniert.
Private Sub btn_filter_Click()
Dim strVon As String
Dim strBis As String
Dim strKrit As String
Dim strkrit2 As String


    If IsDate(Me.txtvon) And IsDate(Me.txtbis) Then
        strVon = Format(Me!txtvon, "\#yyyy\-mm\-dd\#")
        strBis = Format(Me!txtbis, "\#yyyy\-mm\-dd\#")
        strKrit = "invoice_month Between " & strVon & " AND " & strBis
        strkrit2 = " and distributor='" & combdistri & "'"
        Forms!frm_faktura.Form.Filter = strKrit & strkrit2
        Forms!frm_faktura.Form.FilterOn = True
       
      Else
       
        Forms!frm_faktura.Form.Filter = ""
        Forms!frm_faktura.Form.FilterOn = False
   
    End If
   
'Forms!frm_faktura.Form.Requery

End Sub

Wie bekomme ich hin, wenn combdistri leer ist, dass er nur nach dem Datum filtert. Im Moment müssen alle Felder des Filters gefüllt sein um die richtigen Datensätze angezeigt zu bekommen.
Titel: Re: Filtern mit mehreren Optionen
Beitrag von: Xoar am Juni 01, 2017, 11:11:25
Huhu, du müsstes prüfen ob Distributer null ist und abhängig davon den Filterstring erweitern.

If not isnull(combdistri) then strKrit = strKrit & " and distributor='" & combdistri & "'"

Forms!frm_faktura.Form.Filter = strKrit
Forms!frm_faktura.Form.FilterOn = True


Grüße     

Combdistri müsste wenn es nicht wo deklariert ist noch den Formularbezug bekommen, oder? Me!combdistri oder wenns nicht im formularmodul ist mit Forms
Titel: Re: Filtern mit mehreren Optionen
Beitrag von: lutschi83 am Juni 01, 2017, 14:29:32
Hat funktioniert!
Vielen vielen Dank!!!!