Du kan använda makroåtgärden SökEfterPost i en Access-databas för skrivbordet om du vill leta upp en specifik post i en tabell, en fråga, ett formulär eller en rapport.
Inställning
Makroåtgärden SökEfterPost har följande argument.
Åtgärdsargument |
Beskrivning |
||||||||||
Objekttyp |
Ange eller markera den typ av databasobjekt som du söker i. Du kan välja Tabell, Fråga, Formulär eller Rapport. |
||||||||||
Objektnamn |
Ange eller markera det specifika objekt som innehåller posten du söker. Listrutan visar alla databasobjekt av den typ du valde för argumentet Objekttyp. |
||||||||||
Post |
Ange sökningens startpunkt och riktning.
|
||||||||||
Where-villkor |
Ange sökvillkor med samma syntax som för en WHERE-sats i SQL, men utan ordet WHERE. Exempel: Description = "Beverages" Om du vill skapa ett villkor som inkluderar ett värde från en textruta på ett formulär måste du skapa ett uttryck som slår samman den första delen av kriteriet med namnet på textrutan som innehåller värdet som söks. Följande villkor söker till exempel i fältet Beskrivning efter värdet i textrutan txtBeskrivning på formuläret frmKategorier. Lägg märke till likhetstecknet (=) i början av uttrycket och användningen av enkla citattecken (') på var sin sida om referensen till textrutan: ="Description = '" & Forms![frmCategories]![txtDescription] & "'" |
Anmärkningar
-
I fall där fler än en post matchar Where-villkoret avgör följande faktorer vilken post som hittas:
-
Inställningen för Post-argumentet Tabellen i avsnittet Inställningar innehåller mer information om argumentet Post.
-
Posternas sorteringsordning Om argumentet Post till exempel är inställt på Första kan en ändring av sorteringsordningen för posterna påverka vilken post som hittas.
-
-
Objektet som anges i argumentet Objektnamn måste vara öppet innan den här åtgärden körs. Annars visas ett felmeddelande.
-
Om villkoren i argumentet Where-villkor inte uppfylls visas inga fel och fokus ligger kvar på den aktuella posten.
-
Vid sökning efter föregående eller nästa post så fortsätter inte sökningen från början eller slutet när den sista posten nås. Om inga fler poster matchar villkoren visas inga fel och fokus ligger kvar på den aktuella posten. För att bekräfta att en matchande post hittades kan du ange ett villkor för nästa åtgärd och ange samma villkor som i argumentet Where-villkor .
-
När du vill köra instruktionen SökEfterPost i en VBA-modul (Visual Basic for Applications) använder du metoden SökEfterPost för objektet DoCmd.
-
Makroåtgärden SökEfterPost liknar makroåtgärden SökPost men SökEfterPost har kraftfullare sökfunktioner. Makroåtgärden SökPost används primärt för att hitta strängar och har samma funktionalitet som dialogrutan Sök. Makroåtgärden SökEfterPost använder villkor som liknar de för ett filter eller en SQL-fråga. Den här listan visar en del av de saker som du kan göra med makroåtgärden SökEfterPost:
-
Du kan använda komplexa villkor i argumentet Where-villkor, till exempel
-
Beskrivning = "Drycker" och KategoriID = 11
-
Du kan hänvisa till fält som finns i källdata för ett formulär eller en rapport men som inte visas på formuläret eller rapporten. I föregående exempel behöver inte Description eller CategoryID visas på formuläret eller i rapporten för att villkoret ska fungera.
-
Du kan använda logiska operatörer som <, >, OCH, ELLER och MELLAN. SökPost matchar bara poster som är lika med, börjar med eller innehåller den sträng som söks.
Exempel
Det här makrot öppnar först tabellen Kategorier med åtgärden ÖppnaTabell. Makrot använder sedan makroåtgärden SökEfterPost för att hitta den första posten i tabellen där fältet Beskrivning är lika med "Drycker".
Åtgärd |
Argument |
ÖppnaTabell |
Tabellnamn: Kategorier Visa: Datablad Dataläge: Redigera |
SökEfterPost |
Objekttyp: Tabell Objektnamn: Kategorier Post: Första Where-villkor: Beskrivning = "Drycker" |