controle op doublure

Status
Niet open voor verdere reacties.

Eibert

Gebruiker
Lid geworden
18 nov 2006
Berichten
72
In een formulier van access worden personen ingevoerd.
Invoervak (o.a.): txtNaam
Er is een keuzelijst (kzControle) die bestaande personen in de datbase weergeeft.
Rijbron:
Code:
SELECT [id], [Achternaam] & ", " & [Voorletters] FROM Personen WHERE (([Achternaam]) Like (txtNaam)) ORDER BY ], [Achternaam] & ", " & [Voorletters]

Dit werkt in zoverre, dat de keuzelijst de bestaande namen weergeeft als het invoervak wordt verlaten.
Het zou handig zijn als het keuzevak de namen al begint weer te geven als de eerste letter in het invoervak is getypt.
Dus probeer ik de volgende code:
Code:
Private sub txtNaam_KeyUp()
	Me.kzControle.Requery
End sub

Dit werkt niet.
Bij controle blijkt de waarde van txtNaam nog leeg, terwijl er toch al een letter staat (ook bij doorwerken: na enkele letters).

Hoe krijg ik dit wel voor elkaar?
 
Ga op onderstaande link naar het menu links en selecteer "Gemak" en vervolgens "Zoeken". Kies nu voor "Zoeken op ontwikkelend veld". Daar staat een uitleg hoe je jouw probleem oplost. Een voorbeeld kun je ook downloaden.

http://www.accesspower.nl/
 
Het zou handig zijn als het keuzevak de namen al begint weer te geven als de eerste letter in het invoervak is getypt

Verander rijbron van keuzelijst in:
SELECT Personen.Id, Personen.Achternaam, Personen.Voorletters FROM Personen WHERE (((Personen.Achternaam) Like [Forms]![FormPersonen]![txtNaam].[text] & "*"));
Zet bij de 'change' gebeurtenis van txtNaam:
Code:
Private Sub txtNaam_Change()
    Me!kzControle.Requery
End Sub
 
het werkt! Bedankt.

Het werkt zoals ik het in mijn hoofd had.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan