Filteren

Status
Niet open voor verdere reacties.

papauha

Gebruiker
Lid geworden
19 dec 2012
Berichten
18
Beste forum bezoekers,

Ik heb een vraag over het filteren in Access,

Ik heb een filter in een gesplitst formulier dat werkt met een Like filter. Nu wil ik dat zodra er een letter is ingetypt in het tekstvak, bijvoorbeeld een K dat direct het gegevens blad wordt verwerkt en alle woorden met een K zichtbaar zijn, zonder dat de gebruiker een zoek knop hoeft in te drukken of op een enter moet drukken.

Ik dacht zelf aan een after update, enkel veranderd het gegevens blad dan niet direct mee.

Alvast bedankt

Papauha.
 
After Update doet exact wat de naam zegt: iets uitvoeren als je het tekstveld verlaat. Dat wil je dus niet; je wilt een actie die wordt uitgevoerd als je de tekst in het tekstvak wijzigt. Ik zou zeggen: zoek de bijbehorende actie :)
 
Bedankt voor de snelle reactie,

Enkel als ik wijzigen gebruik en vervolgens een letter intyp gebeurt er niks.. Als ik vervolgens op backspace druk wijzigt hij pas mee..
 
Dan moet je de code die je gebruikt even posten. Zonder code wordt het gokken. En dat kan een hoop tijd gaan kosten...
 
De code is als volgt:

Private Sub Zoek_artikel_Change()
If Not IsNull(Zoek_artikel) Then
Me.Filter = "omschrijving Like " & "'%" & Me.Zoek_artikel.Value & "%'"
Me.FilterOn = True
End If

End Sub
 
Jouw code gaat zo inderdaad niet werken. Deze doet het wel:
Code:
Private Sub FilterTekst_Change()
Dim sFilter
    If Me.FilterTekst.Text <> "" Then
        sFilter = "[Toepassing] Like ""*" & Me.FilterTekst.Text & "*"""
        Me.Filter = sFilter
        Me.FilterOn = True
        Me.FilterTekst.SelStart = Me.FilterTekst.SelLength
    Else
        sFilter = ""
        Me.FilterOn = False
    End If
End Sub
De veldnamen kun je zelf wel aanpassen, lijkt me :)
Graag overigens de volgende keer je code opmaken met de CODE knop ( # ) , dan is hij weer leesbaar.
 
Ik zal de volgende keer de code knop gebruiken!

heb nog een probleem.. hij filtert nu wel, alleen niet goed:

Naamloos.jpg

na het intype van de B verdwijnt de hele lijst.
 

Bijlagen

  • Naamloos.jpg
    Naamloos.jpg
    54,8 KB · Weergaven: 43
En hoe moeten wij zien wat je precies hebt gemaakt? Weet je hoe lastig het is om goede raad te geven als we met een blinddoek op moeten zoeken? Maak een voorbeeldje, dan heb je vermoedelijk binnen 5 minuten de oplossing. Anders ga ik vast een nieuwe pot koffie zetten want dan zit ik hier nog wel een tijdje :)
 
Koekje bij.....?

sorry verkeerde foto upload.. ik hoop dat deze uitleg je wel bevalt...

Het formulier moet de gehele lijst van artikelen tonen.
Monteur zoekt item via zoekfunctie.. Als hij alle artikelen met de begin letter B wilt zien typt de monteur B in en vallen alle andere artikelen af die niet met een B beginnen. Vervolgens typt de monteur een tweede letter in bijvoorbeeld BA (Band) en valt de rest van de artikelen af. Nadat de monteur het juiste artikel heeft gevonden kan hij de gegevens aanpassen van dit artikel.


Maar zodra er een letter wordt ingetypt in de zoekfunctie verdwijnen alle artikelen in de lijst.
Naamloos.jpg

Het formulier is een gesplitst formulier.

Formulier bestaat uit:

Formulierkoptekst:
Zoekfunctie

met de code:

Code:
Private Sub Zoek_artikel_Change()
Dim sFilter
    If Me.Zoek_artikel.Text <> "" Then
        sFilter = "omschrijving Like ""*" & Me.Zoek_artikel.Text & "*"""
        Me.Filter = sFilter
        Me.FilterOn = True
        Me.Zoek_artikel.SelStart = Me.Zoek_artikel.SelLength
    Else
        sFilter = ""
        Me.FilterOn = False
    End If
End Sub


Details van het formulier
artikelnummer
omschrijving
prijs

en tot slot een gegevens blad eronder.
 
Je typt toch niet toevallig een spatie in je zoektekst? Want ik heb 'm net getest op een eigen formulier, en hij filtert prima. Behalve als je een spatie typt; de eigenschap Text heeft daar moeite mee.
 
Nee ik typ geen spatie in het tekstvak,

dan zal het misschien wel liggen aan mijn eigenschappen bij het tekstvak en formulier?

Daarom heb ik daar voor de duidelijkheid maar een screentje van gemaakt:

Tekstvak:
tekstvak.jpg

En het formulier:
formulier.jpg
 
Ik kan daar verder niks aan zien; zonder voorbeeld db ben ik verder door mijn opties heen, vrees ik. Wellicht dat iemand anders het ziet :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan