Z dejanjem CancelEvent lahko prekličete dogodek, zaradi katerega je Access zagnal makro, ki vključuje to dejanje. Ime makra je nastavitev lastnosti dogodka, kot je BeforeUpdate, OnOpen, OnUnload ali OnPrint.
Opomba: Dejanje makra »CancelEvent« ni na voljo v programih Access Web App.
Nastavitev
Dejanje CancelEvent nima nobenih argumentov.
Opombe
V obrazec po navadi uporabite dejanje CancelEvent v preverjanje veljavnosti z lastnostjo dogodka BeforeUpdate . Ko uporabnik vnese podatke v kontrolnik ali zapis, Access zažene makro, preden doda podatke v zbirko podatkov. Če podatki ne uspejo veljavnostnih pogojev v makru, dejanje CancelEvent prekliče posodabljanje pred zagonom.
To dejanje lahko pogosto uporabljate z dejanjem MsgBox, s čimer označite, da podatki ne izpolnjujejo pogojev preverjanja veljavnosti, in zagotovite koristne informacije o vrsti podatkov, ki jih morate vnesti.
Navedene dogodke lahko prekličete z dejanjem CancelEvent.
ApplyFilter |
Dirty |
MouseDown |
BeforeDelConfirm |
Exit |
NoData |
BeforeInsert |
Filter |
Open |
BeforeUpdate |
Format |
|
DblClick |
KeyPress |
Unload |
Delete |
Opomba: Dejanje CancelEvent lahko uporabite z dejanjem MouseDown le, da prekličete dogodek, do katerega pride, če z desno tipko miške kliknete predmet.
Če nastavitev lastnosti dogodka OnDblClick za kontrolnik določa makro, ki vključuje dejanje CancelEvent, dejanje prekliče dogodek DblClick.
Za dogodke, ki jih je mogoče preklicati, se po zagonu makra za dogodek izvede privzeto vedenje dogodka (to pomeni, kaj Access običajno naredi, ko pride do dogodka). To vam omogoča, da prekličete privzeto vedenje. Ko na primer dvokliknete besedo, na kateri je točka vstavljanja v polje z besedilom, Access običajno izbere besedo. To privzeto vedenje za dogodek DblClick lahko prekličete v makru in izvedete drugo dejanje, na primer odprete obrazec, ki vsebuje informacije o podatkih v polju z besedilom. Za dogodke, ki jih ni mogoče preklicati, pride do privzetega vedenja, preden se makro zažene.
Opomba: Če lastnost dogodka OnUnload v obrazcu določa makro, ki izvede dejanje CancelEvent , obrazca ne boste mogli zapreti. Popraviti morate stanje, zaradi katerega je bilo izvedeno dejanje CancelEvent , ali pa odprite makro in izbrisati dejanje CancelEvent . Če je obrazec modalno, ne boste mogli odpreti makra.
Če želite izvesti dejanje CancelEvent v modulu Visual Basic for Applications (VBA), uporabite metodo CancelEvent predmeta DoCmd.
Primer
Preverjanje veljavnosti podatkov z makrom
Navedeni makro za preverjanje veljavnosti preveri poštne številke, vnesene v obrazec »Dobavitelji«. Pokaže uporabo dejanj StopMacro, MsgBox, CancelEvent in GoToControl. Pogojni izraz preveri državo/regijo in poštno številko v zapisu v obrazcu. Če oblika poštne številke za državo/regijo ni pravilna, makro prikaže polje s sporočilom in prekliče shranjevanje zapisa. Nato se vrne v kontrolnik »Poštna številka«, kjer lahko popravite napako. Ta makro mora biti dodan lastnosti BeforeUpdate obrazca »Dobavitelji«.
Pogoj |
Dejanje |
Argumenti: Nastavitev |
Pripomba |
IsNull([CountryRegion]) |
StopMacro |
Če je »CountryRegion« Null, veljavnosti poštne številke ni mogoče preveriti. |
|
[CountryRegion] In ("France","Italy","Spain") And Len([Postal Code]) <> 5 |
MsgBox |
Sporočilo: Poštna številka mora vsebovati 5 znakov. Zvočni signal: Da Vrsta: Informacija Naslov: Napaka poštne številke |
Če poštna številka ne vsebuje 5 znakov, prikaži sporočilo. |
... |
CancelEvent |
Prekličite poizvedbo. |
|
GoToControl |
Ime kontrolnika: PostalCode |
||
[CountryRegion] In ("Australia","Singapore") And Len([Postal Code]) <> 4 |
MsgBox |
Sporočilo: Poštna številka mora vsebovati 4 znake. Zvočni signal: Da Vrsta: Informacija Naslov: Napaka poštne številke |
Če poštna številka ne vsebuje 4 znakov, prikaži sporočilo. |
... |
CancelEvent |
Prekličite poizvedbo. |
|
GoToControl |
Ime kontrolnika: PostalCode |
||
([CountryRegion] = "Canada") And ([Postal Code] Not Like"[A-Z][0-9][A-Z] [0-9][A-Z][0-9]") |
MsgBox |
Sporočilo: Poštna številka ni veljavna. Primer kanadske poštne številke: H1J 1C3 Zvočni signal: Da Vrsta: Informacija Naslov: Napaka poštne številke |
Če poštna številka ni pravilna za Kanado, prikaži sporočilo. (Primer kanadske poštne številke: H1J 1C3) |
... |
CancelEvent |
Prekličite poizvedbo. |