Welkom op het forum van startpagina!

Dit forum staat op alleen-lezen. Je kan hier informatie zoeken en oude berichten terugvinden, maar geen nieuwe berichten plaatsen.

Naar overzicht van alle forums

Filter op formulier

  • Karel

    Ik heb een query en nu wil ik van deze query een formulier maken, waarop je aan de hand van filters de juiste waarden te voorschijn tovert. Een ding waarop ik wil filteren is afdeling(= afgeleide veld in betreffende query). Dit wil ik door middel van een keuzelijst(pull down menuutje) Ik krijg het alleen niet voor elkaar dat wanneer ik iets in het pull down menuutje selecteer, de betreffende records uit de query getoond worden.

    Het andere filter wil ik door middel van een invoervak met knop “Toepassen” toepassen. Het gaat hierbij om een bepaalde week(= een berekend veld in de query) Hoe kan ik dit het best oplossen??? Heb nog geen flauw idee.

    Kan iemand mij daarbij helpen, alvast bedankt!!!!!!!!!!

  • ERic B

    Klein voorbeeldje…ik heb een onverbonden tekstveld met de naam ZoekOpAchternaam als de gebruiker iets intypt en vervolgens op de Enter toets drukt wordt de sub Startzoeken opgestart. In deze routine bouw ik eerst het filter op. In mijn geval met jokers. Vervolgens activeer ik het filter met het commando

    DoCmd.ApplyFilter

    Voorbeeldje :

    'event van het invoerveld

    Private Sub ZoekOpAchternaam_KeyDown(KeyCode As Integer, Shift As Integer)

    If KeyCode = 13 Then Startzoeken

    End Sub

    'Zoekroutine

    Private Sub Startzoeken()

    Dim tf As String

    If Len(Nz(Me.ZoekOpAchternaam)) > 0 Then

    tf = " Like ‘*“ & Me.ZoekOpAchternaam & ”*’"

    End If

    With CodeContextObject

    DoCmd.ApplyFilter “”, tf

    If (.RecordsetClone.RecordCount = 0) Then 'Geen records gevonden

    MsgBox “Geen records aangetroffen”, vbOKOnly + vbExclamation, “Probleem”

    DoCmd.ShowAllRecords 'toon alles

    End If

    End With

    End Sub

    Houd wel rekening met……, indien je een getal gebruikt zal de syntax van het filter zijn ( is de naam van het veld in de tabel. zoekpostcode is de naam van het onverbonden veld.)

    DoCmd.ApplyFilter “”, "=" & Me.zoekpostcode

    Zoek je naar tekst dan moet je het enkele aanhalingsteken niet vergeten

    DoCmd.ApplyFilter “”, "=“ & ”'“ & Me.zoekstraatnaam &”'"

    Verder….indien je een onverbonden combobox en of listbox aanmaakt dan zal je in de meeste gevallen naar een nummer moeten zoeken. In dit geval het ID. Is dit niet het geval dan vraag je de tekst op van de combo of listbox.

    Indien je gebruikers de gelegenheid geeft om te filteren, geef ze dan ook de mogelijkheid om het filter op te heffen. Maak een knop en stuur het statement

    DoCmd.ShowAllRecords aan

    Private Sub CMDheffilterop_Click()

    DoCmd.ShowAllRecords

    End Sub

    suc6