Dejanje makra »UporabiFilter«

Dejanje ApplyFilter lahko uporabite za uporabo filtra, poizvedbe ali stavka SQL WHERE v tabeli, obrazcu ali poročilu, da omejite ali razvrstite zapise v tabeli ali zapise iz osnovne tabele ali poizvedbe v obrazcu ali poročilu. V poročilih lahko to dejanje uporabite le v makru, ki je določen z lastnostjo dogodka OnOpen za poročilo.

Opomba : To dejanje lahko uporabite za uporabo stavka SQL WHERE le, če uporabljate strežniško filtriranje. Strežniškega filtriranja ni mogoče uporabiti v viru zapisov shranjene procedure.

Opomba : Dejanje makra »ApplyFilter« ni na voljo v programih Access Web App.

Nastavitev

V dejanju ApplyFilter so ti argumenti:

Argument dejanja

Opis

Ime filtra

Ime filtra ali poizvedbe, ki omeji ali razvrsti zapise v tabeli, obrazcu ali poročilu. Vnesite ime obstoječe poizvedbe ali filter, ki je bil shranjen kot poizvedba v polju Ime filtra v razdelku Argumenti dejanja v podoknu graditelja makrov.

Opomba : Če uporabite to dejanje za uporabo strežniškega filtriranja, mora biti argument Ime filtra prazen.

Pogoj Where

Veljaven stavek SQL WHERE (brez besede WHERE) ali izraz, ki omeji zapise v tabeli, obrazcu ali poročilu.

Opomba : V izrazu argumenta Pogoj Where je na levi strani izraza po navadi ime polja iz osnovne tabele ali poizvedbe za obrazec ali poročilo. Prava stran izraza tipično vsebuje pogoji, ki ga želite uporabiti za to polje za omejitev ali razvrščanje zapisov. Na primer, pogoj je lahko ime kontrolnika ali drugega obrazca, ki vsebuje vrednost, s katero naj bi se ujemali zapisi v prvem obrazcu. Ime kontrolnika mora biti popolnoma kvalificirano, na primer:

Forms!formname!controlname

Imena polja morajo biti znotraj dvojnih narekovajev, dobesedni nizi pa morajo biti znotraj enojnih narekovajev.

Maksimalna dolžina argumenta Pogoj Where je 255 znakov. Če morate vnesti daljši stavek SQL WHERE, uporabite metodo ApplyFilter predmeta DoCmd v modulu Visual Basic for Applications (VBA). Vnesete lahko izjavo s stavkom SQL WHERE, ki vsebuje do 32.768 znakov v modulu VBA.


Opomba : Če ste že določili filter z ustreznimi podatki, lahko uporabite argument Filter Name. Pogoje omejitve lahko neposredno vnesete z argumentom Where Condition. Če uporabite oba argumenta, Access za rezultate filtra uporabi stavek WHERE. Uporabite enega ali oba argumenta.

Opombe

Za obrazec v pogledu obrazca in pogledu podatkovnega lista lahko uporabite filter ali poizvedbo.

Filter in pogoj WHERE, ki ju uporabite, postaneta nastavitev lastnosti Filter ali ServerFilter obrazca ali poročila.

Če delate s tabelami in obrazci, je to dejanje podobno, kot če bi kliknili Uporabi filter/razvrščanje ali Uporabi strežniški filter v meniju Zapisi. Menijski ukaz uporabi nazadnje ustvarjen filter v tabeli ali obrazcu, medtem ko dejanje ApplyFilter uporabi določen filter ali poizvedbo.

Če v Accessovi zbirki podatkov pokažete na Filter v meniju Zapisi in nato kliknete Napredni filter/razvrščanje, ko zaženete dejanje ApplyFilter, Okno »Dodatni filter/razvrščanje« pokaže pogoj filtriranja, ki ste ga izbrali s tem dejanjem.

Če želite odstraniti filter in prikazati vse zapise za tabelo ali obrazec v Accessovi zbirki podatkov, lahko uporabite dejanje ShowAllRecords ali ukaz Odstrani filter/razvrščanje v meniju Zapisi. Če želite odstraniti filter v Accessovem projektu (.adp), se lahko vrnete v okno strežniško filtriranje z obrazcem in odstranite vse pogoje filtriranja ter v orodni vrstici v meniju Zapisi kliknete Uporabi strežniški filter ali pa nastavite lastnost ServerFilterByForm na vrednost False (0).

Ko shranite tabel ali obrazec, Access shrani vse filtre, ki so trenutno določeni v ustreznem predmetu, vendar ne bo samodejno uporabil filtra ob naslednjem odpiranju predmeta (čeprav bo samodejno uporabil katero koli razvrščanje, ki ste ga uporabili za predmet, preden je bil shranjen). Če želite ob prvem odpiranju obrazca samodejno uporabiti filter, določite makro, ki vsebuje dejanje ApplyFilter ali dogodkovno proceduro, ki vsebuje metodo ApplyFilter za predmet DoCmd kot lastnost dogodka OnOpen za obrazec. Uporabite lahko tudi filter, in sicer z uporabo dejanja OpenForm ali OpenReport ali ustreznima metodama. Če želite filter ob prvem odpiranju tabele uporabiti samodejno, lahko odprete tabelo z makrom, ki vsebuje dejanje OpenTable, ki mu takoj sledi dejanje ApplyFilter.

Primer

Uporaba filtra z makrom

Navedeni makro vsebuje nabor dejanj, od katerih vsaka filtrira zapise za obrazec »Telefonska številka stranke«. Kaže uporabo dejanj ApplyFilter, ShowAllRecords in GoToControl. Prav tako kaže uporabo pogojev, če želite določiti, kateri preklopni gumb je bil v skupini možnosti izbran v obrazcu. Vsaka vrstica dejanja je povezana s preklopnim gumbom, ki izbere nabor zapisov, pri čemer začne z A, B, C in tako naprej, ali vse zapise. Ta makro je treba dodati v dogodek AfterUpdate skupine možnosti »CompanyNameFilter«.

Pogoj

Dejanje

Argumenti: Nastavitev

Pripomba

[CompanyNameFilters]=1

ApplyFilter

Pogoj Where: [CompanyName] Like "[AÀÁÂÃÄ]*"

Filter za imena podjetij, ki se začnejo z A, À, Á, Â, Ã ali Ä.

[CompanyNameFilters]=2

ApplyFilter

Pogoj Where: [CompanyName] Like "B*"

Filter za imena podjetij, ki se začnejo z B.

[CompanyNameFilters]=3

ApplyFilter

Pogoj Where: [CompanyName] Like "[CÇ]*"

Filter za imena podjetij, ki se začnejo s C ali Ç.

... Vrstice dejanja za D do Y imajo isto obliko kot za A do C ...

[CompanyNameFilters]=26

ApplyFilter

Pogoj Where: [CompanyName] Like "[ZÆØÅ]*"

Filter za imena podjetij, ki se začnejo z Z, Æ, Ø, or Å.

[CompanyNameFilters]=27

ShowAllRecords

Pokaži vse zapise.

[RecordsetClone].[RecordCount]>0

GoToControl

Ime kontrolnika: CompanyName

Če vrnjeni zapisi ustrezajo izbrani črki, premaknite fokus na kontrolnik »CompanyName«.


Razširite svoja znanja
Oglejte si izobraževanje
Prvi dobite nove funkcije
Pridružite se programu Office Insider

Vam je bila informacija v pomoč?

Zahvaljujemo se vam za povratne informacije.

Zahvaljujemo se vam za povratne informacije. Videti je, da bi vam prišla prav pomoč enega od naših Officeovih agentov za podporo.

×