Veiksmą CancelEvent naudokite norėdami atšaukti įvykis, privertusį „Access“ vykdyti makrokomanda su šiuo veiksmu. Makrokomandos pavadinimas yra įvykio ypatybės parametras, pvz., BeforeUpdate, OnOpen, OnUnload arba OnPrint.
Pastaba: Makrokomandos veiksmas CancelEvent „Access“ žiniatinklio taikomosiose programose nepasiekiamas.
Parametras
Veiksmas CancelEvent neturi argumentų.
Pastabos
Dalyje forma veiksmas CancelEvent paprastai naudojamas makrokomandoje tikrinimas kartu su įvykio ypatybe BeforeUpdate. Kai vartotojas įveda duomenis dalyse valdiklis arba įrašas, „Access“ paleidžia makrokomandą prieš įtraukiant duomenis į duomenų bazę. Jei duomenys netenkina makrokomandos tikrinimo sąlygų, veiksmas CancelEvent atšaukia procesą naujinti prieš jam prasidedant.
Dažnai šį veiksmą galite naudoti kartu su veiksmu MsgBox, norėdami nurodyti, kad duomenys netenkina tikrinimo sąlygų, ir pateikti naudingos informacijos apie tai, kokio tipo duomenis reikėtų įvesti.
Nurodytus įvykius galima atšaukti naudojant veiksmą CancelEvent.
ApplyFilter |
Dirty |
MouseDown |
BeforeDelConfirm |
Išeiti |
NoData |
BeforeInsert |
Filtras |
Atidaryti |
BeforeUpdate |
Formatas |
Spausdinti |
DblClick |
KeyPress |
Unload |
Naikinti |
Pastaba: Veiksmą CancelEvent galite naudoti kartu su įvykiu MouseDown tik norėdami atšaukti įvykį, kuris vykdomas, kai dešiniuoju pelės mygtuku spustelite objektą.
Jei valdiklio įvykio OnDblClick ypatybės parametras nurodo makrokomandą, kurioje yra veiksmas CancelEvent, veiksmas atšaukia įvykį DblClick.
Įvykių, kuriuos galima atšaukti, atveju įvykio numatytasis veikimas (t. y. ką „Access“ paprastai daro įvykus įvykiui) vykdomas, kai paleidžiama įvykio makrokomanda. Tai suteikia galimybę atšaukti numatytąjį veikimą. Pvz., dukart spustelėjus žodį, kurį nurodo įterpimo vieta dalyje teksto laukas, „Access“ paprastai pasirenka žodį. Galite atšaukti šį numatytąjį veikimą įvykio DblClick makrokomandoje, kad būtų atliekamas kitas veiksmas, pvz., atidaroma forma, kurioje pateikiama informacijos apie duomenis teksto lauke. Įvykių, kurie negali būti atšaukti, atveju, numatytasis veikimas vykdomas prieš paleidžiant makrokomandą.
Pastaba: Jei formos įvykio OnUpload ypatybė nurodo makrokomandą, kuri atlieka veiksmą CancelEvent, negalėsite uždaryti formos. Turite arba ištaisyti sąlygą, sukėlusią veiksmą CancelEvent, arba atidarykite makrokomandą ir panaikinkite veiksmą CancelEvent. Jei forma yra modalinis, makrokomandos atidaryti negalėsite.
Norėdami vykdyti veiksmą CancelEvent „Visual Basic for Applications“ (VBA) modulyje, naudokite objekto DoCmd metodą CancelEvent.
Pavyzdys
Duomenų tikrinimas naudojant makrokomandą
Ši tikrinimo makrokomanda tikrina pašto kodus, įvestus formoje Tiekėjai. Ji parodo veiksmų StopMacro, MsgBox, CancelEvent ir GoToControl naudojimą. Sąlyginė išraiška tikrina formos įraše įvestą šalį / regioną ir pašto kodą. Jei šalies / regiono pašto kodas nėra tinkamo formato, makrokomanda pateikia pranešimo lauką ir atšaukia įrašo įrašymą. Ji grąžina jus į valdiklį Pašto kodas, kuriame galėsite ištaisyti klaidą. Ši makrokomanda turi būti pridėta prie formos Tiekėjai ypatybės BeforeUpdate.
Sąlyga |
Veiksmas |
Argumentai: parametras |
Komentaras |
IsNull([CountryRegion]) |
StopMacro |
Jei CountryRegion yra Null, pašto kodo negalima patikrinti. |
|
[CountryRegion] ("Prancūzija", "Italija", "Ispanija") ir Len([Pašto kodas]) <> 5 |
MsgBox |
Pranešimas: Pašto kodą turi sudaryti 5 simboliai. Pyptelėjimas: Taip Tipas: Informacija Pavadinimas Pašto kodo klaida |
Jei pašto kodas ne iš 5 simbolių, rodomas pranešimas. |
... |
CancelEvent |
Atšaukite įvykį. |
|
GoToControl |
Valdiklio pavadinimas: PostalCode |
||
[CountryRegion] ("Australija", "Singapūras") ir Len([Pašto kodas]) <> 4 |
MsgBox |
Pranešimas: Pašto kodą turi sudaryti 4 simboliai. Pyptelėjimas: Taip Tipas: Informacija Pavadinimas Pašto kodo klaida |
Jei pašto kodas ne iš 4 simbolių, rodomas pranešimas. |
... |
CancelEvent |
Atšaukite įvykį. |
|
GoToControl |
Valdiklio pavadinimas: PostalCode |
||
([CountryRegion] = "Kanada") ir ([Pašto kodas] ne "[A-Z] [0 – 9] [A-Z] [0-9][A-Z][0-9]") |
MsgBox |
Pranešimas: Neleistinas pašto kodas. Kanados pašto kodo pavyzdys: H1J 1C3 Pyptelėjimas: Taip Tipas: Informacija Pavadinimas Pašto kodo klaida |
Jei neteisingas Kanados pašto kodas, rodomas pranešimas. (Kanados pašto kodo pavyzdys: H1J 1C3) |
... |
CancelEvent |
Atšaukite įvykį. |