Zoeken met ABC

Status
Niet open voor verdere reacties.

Scubaman

Gebruiker
Lid geworden
19 mrt 2010
Berichten
99
Goede middag,


ik probeer mijn database te verbeteren, of althans een poging daar toe.

Ik heb nu een zoekformulier, waar op achternaam gezocht kan worden, maar niet altijd is de achternaam juist gespeld.
Heb de gedachte bijv. knoppen te maken met ABC etc en daar een query aan te knopen, maar dan moet ik wel 26 queries maken. Zou ook een keuzelijst kunnen maken, maar dan moet ik volgens mij nog queries gebruiken. Kan natuurlijk met Like "A*" en als volgend criterium Like "B*" gebruiken om het aantal queries te verminderen, maar dan krijg ik mijn keuzelijst niet werkend.

Weet iemand een oplossing of mogelijk een betere oplossing dan ik in gedachten heb?


Bedankt
 
Ik snap niet helemaal hoe je nu zoekt, want dat geef je niet aan. Een zoekfunctie moet zo flexibel mogelijk zijn, dus ik gebruik meestal een dynamisch tekstvak. Dat filtert de lijst op basis van de ingetypte letters. Maak je een typefout, of typ je een niet-bestaande naam, dan is de lijst leeg en kun je een of meer letters weghalen voor een andere speurtocht. Is een stuk overzichtelijker dan 26 queries of knoppen.
 
Gebruik nu in een query deze expressie:

Code:
Like [ Van welke cursist wilt u de gegevens wijzigen?] & "*"



Maar dacht dat het misschien mooier/beter/eleganter kon
 
Laatst bewerkt:
Filteren doe je bij voorkeur op een formulier, en niet in een query. Ik probeer queries zo 'schoon' mogelijk te houden, zodat ze altijd de ongefilterde records laten zien. Op het (meestal doorlopende) formulier kun je dan op deze manier filteren met een tekstvak:
Code:
Private Sub txtFilter1_Change()
Dim sFilter As String

sFilter = "[Categorie] LIKE '*" & Me.txtFilter1.Text & "*'"
If Len(Me.txtFilter1.Text) > 0 Then
    Me.Filter = sFilter
    Me.FilterOn = True
    Me.txtFilter1.SelStart = Me.txtFilter1.SelLength
Else
    Me.Filter = ""
    Me.FilterOn = False
    Me.txtFilter1.SetFocus
End If
End Sub
Op mijn formulier heb ik een paar tekstvakken om te filteren, vandaar het nummer in de naam van het tekstvak. Deze filtert op het veld [Categorie]. Je kunt dat uiteraard probleemloos hernoemen als je wilt.
 
Goede morgen Michel,


Dank je wel voor je antwoord. Ik zal het bestuderen en uitproberen. Daarna koppel ik het hier natuurlijk weer terug. Je weet, ik heb altijd wat problemen met codes, omdat ik daar geen kaas van heb gegeten, vandaar dat ik al schreef ga het bestuderen.
Denk dat ik maar een cursus moet volgen, dan snap ik de code misschien eerder en beter:rolleyes:
 
Deze techniek staat ook in de Access cursus, dus da's een mooi startpunt ;)
 
Die heb ik al gedownload.
Ga opzoek naar een boek met VBA voor beginners o.i.d.

Merk dat ik eigenlijk alles wil zonder programmeren, maar dat schijnt een utopie te zijn.
 
Je kan best een database maken zonder te programmeren, maar de ingebouwde functionaliteit in Access staat dan weinig intelligentie toe in de db. Juist door te programmeren vergroot je de mogelijkheden. Ik zou ook graag met 100km/uur over een snelweg gaan, maar dat schijnt zonder auto best lastig te zijn. Maar lopend kom je er natuurlijk ook :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan