Pomoću akcije makronaredbe SearchForRecord u bazama podataka programa Access za računala možete potražiti određeni zapis u tablici, upitu, obrascu ili izvješću.
Postavka
Akcija makronaredbe SearchForRecord sadrži sljedeće argumente.
Argument akcije |
Opis |
||||||||||
Vrsta objekta |
Unesite ili odaberite vrstu objekta baze podataka u kojem pretražujete. Možete odabrati Tablica,Upit, Obrazac ili Izvješće. |
||||||||||
Naziv objekta |
Unesite ili odaberite određeni objekt koji sadrži zapis koji želite potražiti. Padajući popis prikazuje sve objekte baze podataka vrste koju ste odabrali za argument Vrsta objekta . |
||||||||||
Snimanje |
Navedite početnu točku i smjer pretraživanja.
|
||||||||||
Uvjet Where |
Unesite kriterije za pretraživanje koristeći istu sintaksu kao SQL uvjet WHERE, samo bez riječi "WHERE". Na primjer: Description = "Beverages" Da biste stvorili kriterij koji sadrži vrijednost iz tekstnog okvira na obrascu, morate stvoriti izraz koji povezuje prvi dio kriterija s nazivom tekstnog okvira koji sadrži vrijednost za pretraživanje. Sljedeći kriterij, primjerice, tražit će vrijednost u tekstnom okviru txtDescription u obrascu pod nazivom frmCategories. Zabilježite znak jednakosti (=) na početku izraza i korištenje jednostrukih navodnika (') s bilo koje strane reference tekstnog okvira: ="Description = '" & Forms![frmCategories]![txtDescription] & "'" |
Napomene
-
U slučajevima kada više zapisa odgovara kriterijima u argumentu Uvjet Where , sljedeći faktori određuju koji se zapis nalazi:
-
Postavka argumenta Zapis Dodatne informacije o argumentu Zapis potražite u tablici u odjeljku Postavke.
-
Redoslijed sortiranja zapisa Ako je, primjerice , argument Zapis postavljen na Prvo, promjena redoslijeda sortiranja zapisa može promijeniti koji se zapis nalazi.
-
-
Objekt naveden u argumentu Naziv objekta mora biti otvoren prije izvođenja ove akcije. U suprotnom se pojavljuje pogreška.
-
Ako kriteriji u argumentu Uvjet Where nisu zadovoljeni, ne pojavljuje se pogreška, a fokus ostaje na trenutnom zapisu.
-
Prilikom traženja prethodnog ili sljedećeg zapisa pretraživanje se ne "prelama" kada dosegne kraj podataka. Ako nema dodatnih zapisa koji odgovaraju kriterijima, neće se pojaviti pogreška, a fokus će ostati na trenutnom zapisu. Da biste potvrdili da je pronađena podudarnost, možete unijeti uvjet za sljedeću akciju i uvjet učiniti jednakim kriterijima u argumentu Uvjet Where .
-
Da biste pokrenuli akciju SearchForRecord u VBA modulu, koristite metodu SearchForRecordobjekta DoCmd .
-
Akcija makronaredbe SearchForRecord slična je akciji makronaredbe FindRecord, ali SearchForRecord sadrži naprednije značajke pretraživanja. Akcija makronaredbe FindRecord prvenstveno se koristi za traženje nizova, a duplicira funkciju dijaloškog okvira Traženje. Akcija makronaredbe SearchForRecord koristi kriterije koji su više poput kriterija filtra ili SQL upita. Na sljedećem su popisu navedene neke stvari koje možete učiniti pomoću akcije makronaredbe SearchForRecord :
-
Složene kriterije možete koristiti u argumentu Uvjet Where , npr.
-
Description = "Pića" i CATEGORYID = 11
-
Možete se referirati na polja koja se nalaze u izvoru zapisa obrasca ili izvješća, ali se ne prikazuju na obrascu ili izvješću. U prethodnom primjeru, Description niti CategoryID ne moraju prikazivati na obrascu ili izvješću da bi kriteriji funkcionirali.
-
Možete koristiti logičke operatore, kao što su<, >, AND, OR i BETWEEN. Akcija FindRecord podudara se samo s nizovima koji su jednaki, započinju s nizom ili sadrže niz koji se traži.
Primjer
Sljedeća makronaredba najprije otvara tablicu Kategorije pomoću akcije OpenTable . Makronaredba zatim koristi akciju makronaredbe SearchForRecord za pronalaženje prvog zapisa u tablici u kojoj je polje Opis jednako "Pića".
Akcija |
Argumenti |
Otvori tablicu |
Naziv tablice: kategorije Prikaz: Podatkovna tablica Način podataka: uređivanje |
Searchforrecord |
Vrsta objekta: tablica Naziv objekta: Kategorije Zapis: Prvi Uvjet Where: Opis = "Pića" |