Legg til en søkekontroll i et tilgangsskjema

Å befolke et Access-skjema er en enkel oppgave takket være bundne skjemaer og kontroller. Faktisk vil en veiviser lede deg gjennom hele oppsettet. Resultatene er imidlertid ikke alltid lett søkbare. Det er flere måter å legge til en søkefunksjon på, men en tekstboks eller en kombinasjonsboks i overskriften er en av de enkleste å opprette og implementere. Det første trinnet gjenoppretter ikke formen. Det første trinnet er å bestemme hvilken verdi du vil bruke som søkekriterier. En primær nøkkelverdi kan være ditt første valg. Ofte er den primære nøkkelverdien ikke praktisk. For eksempel kan det være lurt å søke etter etternavnverdi, som kanskje ikke er en del av datas primære nøkkel. Når du vet hvordan brukere vil søke i dataene, kan du opprette og implementere en søkeløsning. Følgende instruksjoner legger for eksempel til en søkekontroll i ordreskjemaet (i Northwind, demodatabasen som følger med Access):
  1. Åpne overskriften og legg inn en ubundet tekstboks-kontroll med ordreskjemaet i designvisning. Du trenger ikke å sette søkekontrollen i overskriften, men å gjøre det er en god måte å oppveie søkefunksjonen fra resten av skjemaet.
  2. Navngi tekstboksen txtSøk.
  3. Åpne skjemaets modul ved å klikke på Koden-knappen på verktøylinjen for skjemautforming.
  4. Skriv inn følgende kode for txtSearch-kontrollens After Update-hendelse:
Privat sub txtSearch_AfterUpdate ()
 'Finn post basert på innholdet i txtSearch. 
 Dim strSøk som streng 
 Feil GoTo errHandler 
 'Avgrenset for tekstsøk. 
 'strSearch = "OrderID =" & Chr (39) & Me! txtSearch.Value & Chr (39) 
 'Avgrenset for numeriske verdier. 
 strSearch = "OrderID =" & Me! txtSearch.Value 
 'Finn rekorden. 
 Me.RecordsetClone.FindFirst strSearch 
 Me.Bookmark = Me.RecordsetClone.Bookmark 
 Avslutt sub 
 errHandler: 
 MsgBox "Feilnr:" & Err.Nummer & "; Beskrivelse:" & _ 
 Err.Description 
 Slutt sub 
Skriv inn et ordrenummer i skjemavisning i skjemavisningen og trykk Enter. Gjennomføring av kontrollens After Update-hendelse søker i OrderID-feltet etter et samsvar med gjeldende verdi i txtSearch og oppdaterer skjemaet og underformen, tilsvarende. Hvis det ikke er noe samsvar, viser skjemaet den første posten i platesettet. Angi en ugyldig datatype vil generere en feil. Feilhåndteringsrutinen er rudimentær, så du vil teste den grundig og inkludere passende handlinger etter behov. Når du bruker denne teknikken på dine egne skjemaer, bør du oppdatere to områder:
  • Velg riktig avgrenset søkeuttalelse og kommenter den andre. Koden inneholder et eksempeluttalelse, som er kommentert, for å søke i et tekstfelt. Dette eksemplet søker i et numerisk felt (OrderID i ordretabellen).
  • Bytt den eksplisitte referansen til OrderID med det aktuelle feltnavnet. (Se den uthevede uttalelsen over.)
Det er mange måter å implementere en søkefunksjon, men dette er en av de enkleste. Du vil finne at det fungerer bra så lenge du søker i et enkelt felt. Hvis listen over søkeverdier er relativt kort, kan du bruke en kombinasjonsboks i stedet for en tekstboks og vise søkeverdiene i kontrollens rullegardinliste for enkelt valg.

© Copyright 2020 | mobilegn.com