Denne Access-veiledningen forklarer hvordan du oppretter et Søkeskjema med flere kriterier.

du vil kanskje også lese:

Få Tilgang Til DoCmd.OpenForm-Metoden for å åpne Access-Skjema

Access-Kombinasjonsboksverdien avhenger av en Annen Kombinasjonsboks

Returner Access – skjemainndata til Access-Rapport Eller Skjema Eller Spørring

Access opprett Søkeskjema med flere kriterier

noen ganger må du opprette et Søkeskjema der brukerne kan velge bestemte kriterier. Den enkleste løsningen er å filtrere data direkte for hvert felt som Å bruke AutoFilter I Excel, men dette er ikke elegant i det hele tatt.

Access gir En Skjemafunksjon kalt Filter by Form som er veldig enkel å bruke.

Velg En Tabell /Spørring > Opprett > Skjema > Bruk Filter / Sorter

access_search_form_11

Nå kan du velge flere kriterier, kan du selv velge en verdi fra rullegardinlisten. Men disse verdiene av dropdown bokser er uavhengige av hverandre.

Du kan også bruke eller vilkår ved å klikke på eller-fanen.

access_search_form_12

når du valget er gjort, klikk På Toggle Filter

access_search_form_13

en bedre måte å gjøre filtrering er for brukere å velge mellom avhengige dropdown bokser.

i den første rullegardinmenyen velger brukerne for eksempel avdeling A, og i den andre rullegardinmenyen kan brukerne vise en liste over personer i avdeling A.

denne artikkelen viser deg hvordan du gjør slik filtrering.

Opprett et resultatskjema

Anta at vi har En Spørring som nedenfor. Vårt mål er å tillate brukere å velge avdeling for å vise ansatt informasjon, eller velg avdeling + ansatt ID.

Vi skal lage et «resultatskjema» som viser søkeresultatet.

Spørsmål1
Avdeling Ansatt ID Ansettelsesdato Lønn Godtgjørelse
Konto 1 1/1/2000 10000 100
Admin 2 1/1/2001 20000 200
Admin 3 1/1/2002 30000 300
Admin 4 1/1/2003 40000 400
Lønn 5 1/1/2004 50000 500
HR 6 1/1/2005 60000 600

Klikk På Spørringen og Under Opprett-fanen, velg Flere Skjemaer > Dataark

access_search_form

lagre Skjemaet Som result_frm. Hvis du ved et uhell endrer resultatdataene, bør du endre Den Låste Egenskapen Til Hver Tekstboks Til Ja

access_search_form_04

I dette eksemplet vil jeg returnere alle feltene I Query1 I Resultatskjema. Jeg velger Dataark fordi hver post kan vises i en rad med horisontal rullefelt. Jeg foretrekker ikke Å bruke Kontinuerlig Skjema eller Enkelt Skjema fordi hver post vises i flere rader.

Opprett Et Søkeskjema

Opprett et tomt Skjema og legg deretter til to Kombinasjonsbokser (Combo_Dept, Combo_EmpID) og en knapp (search_btn) som vist nedenfor.

access_search_form_05

1) Klikk På Combo_Dept, i Egenskapen Radkilde, skriv inn

SELECT DISTINCT Department FROM Query1;

Radkilde er det du kan velge i Comboboxen.

2) Klikk På Combo_EmpID, i Egenskapen Radkilde, type

SELECT FROM Query1 WHERE =!!;

3) Velg Combo_Dept, velg Etter Oppdateringshendelse Og bygg Prosedyren Under

Private Sub Combo_Dept_AfterUpdate() Me.Combo_EmpID = Null Me.Combo_EmpID.RequeryEnd Sub

Når Du velger En Avdeling, tilbakestilles Combo_EmpID Til Null og kjør deretter spørringen

4) Høyreklikk på search_btn og velg Deretter Build Event

Private Sub search_btn_Click() If IsNull(Me.Combo_EmpID) Then searchCriteria = "='" & Me.Combo_Dept & "'" searchSQL = "Select * FROM Query1 where " & searchCriteria Else searchCriteria = "='" & Me.Combo_Dept & "' AND =" & Me.Combo_EmpID searchSQL = "Select * FROM Query1 where " & searchCriteria End If DoCmd.OpenForm "result_frm", 3, searchSQLEnd Sub

Nå har du opprettet et enkelt Søkeskjema. Etter at du har valgt kriterier I Søkeskjemaet, når du klikker på søkeknappen, Vil Resultatskjemaet dukke opp og viser resultatet.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.