Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: Maris99 am März 04, 2015, 09:56:29

Titel: Im Formularkopf Daten per Dropdown oder Textfeld filtern
Beitrag von: Maris99 am März 04, 2015, 09:56:29
Hallo Leute,<br><br>ich finde im Netz leider keine gute (verständliche) Anleitung dazu. Ich glaub das Thema ist für jemanden der sich mit Access gut auskennt sicher leicht zu lösen. Ich bin leider nicht so fit... Mir Geht es einfach darum mit einem Feld den Monat und/oder das Jahr in einem Endlosformular zu filter. Das Filtern sollte über den Kopf erfolgen.<br><br>Eine Beispieldatei habe ich euch angehangen.<br><br>Ich Danke euch schon mal für den Support!<br><br>Lg,<br>Maris
Titel: Re: Im Formularkopf Daten per Dropdown oder Textfeld filtern
Beitrag von: MaggieMay am März 04, 2015, 14:28:28
Hallo,

ich hätte dazu folgenden Vorschlag für dich.
Diese Prozedur kopierst du ins Klassenmodul des Formulars:

Public Function setFilter()
    Dim strFilter As String
   
    If Not IsNull(Me.Text13) Then
        strFilter = "Monat=" & Me.Text13
    End If
    If Not IsNull(Me.Text11) Then
        If Len(strFilter) > 0 Then
            strFilter = strFilter & " AND "
        End If
        strFilter = strFilter & "Jahr=" & Me.Text11
    End If
    If Len(strFilter) > 0 Then
        Me.Filter = strFilter
        Me.FilterOn = True
    Else
        Me.Filter = ""
        Me.FilterOn = False
    End If
End Function


und bei der Ereigniseigenschaft "Nach Aktualisierung" der beiden Textfelder trägst du den Funktionsaufruf folgendermaßen ein:

=setFilter()
Titel: Re: Im Formularkopf Daten per Dropdown oder Textfeld filtern
Beitrag von: Frank77 am März 04, 2015, 14:31:04
Hallo!
Hab das mal auf die schnelle zusammen gebastelt
Gruß Frank
Titel: Re: Im Formularkopf Daten per Dropdown oder Textfeld filtern
Beitrag von: Nadeshiko am März 04, 2015, 14:34:53
Hallo!

Ich hab das Gleiche mal gebaut.

Ich hab ein Formular mit Unterformular

Im Hauptformular, ein Kominationsfeld mit "Land"
Nach Update, erfolgt eine Abfrage mit Filter auf das Unterformular:


Private Sub cboFilterCountry_AfterUpdate()
     
Dim strFilter As String

strFilter = "CountryID ='" & CStr(Me!cboFilterCountry.Text) & "' AND Agent = True"
     
With Me!sfmFilterDebitoren.Form
If Not Nz(Me!cboFilterCountry, 0) = 0 Then
    .Filter = strFilter
    .FilterOn = True
   Else
   .Filter = ""

End If
End With

End Sub