פעולת המאקרו CancelEvent

חל על
Access של Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

באפשרותך להשתמש בפעולה CancelEvent כדי לבטל את האירוע שגרם ל- Access להפעיל את המאקרו המכיל פעולה זו. שם המאקרו הוא ההגדרה של מאפיין אירוע כגון BeforeUpdate, ‏OnOpen, ‏OnUnload או OnPrint.

הערה

פעולת המאקרו CancelEvent אינה זמינה ביישומי Access Web App.

הגדרה

הפעולה CancelEvent לא מכילה ארגומנטים כלשהם.

הערות

בטופס, בדרך כלל עליך להשתמש בפעולה CancelEvent במאקרו אימות עם מאפיין האירוע BeforeUpdate . כאשר משתמש מזין נתונים בפקד או ברשומה, Access מפעיל את המאקרו לפני הוספת הנתונים למסד הנתונים. אם הנתונים נכשלים תנאי האימות במאקרו, הפעולה CancelEvent מבטלת את תהליך העדכון לפני הפעלתו.

לעתים קרובות, אתה משתמש בפעולה זו עם הפעולה MsgBox כדי לציין שהנתונים לא עמדו בתנאי האימות, וכדי לספק מידע שימושי על סוג הנתונים שיש להזין.

ניתן לבטל את האירועים הבאים באמצעות הפעולה CancelEvent.

ApplyFilter Dirty MouseDown
BeforeDelConfirm יציאה NoData
BeforeInsert סינון פתיחה
BeforeUpdate תבנית הדפסה
DblClick KeyPress ביטול הורדה
מחיקה

      

הערה

באפשרותך להשתמש בפעולה CancelEvent עם האירוע MouseDown בלבד כדי לבטל את האירוע המתרחש בעת הלחיצה באמצעות לחצן העכבר הימני על אובייקט כלשהו.

אם הגדרת מאפיין האירוע OnDblClick של פקד כלשהו מציינת מאקרו המכיל את הפעולה CancelEvent, הפעולה מבטלת את האירוע DblClick.

עבור אירועים שניתן לבטל, אופן הפעולה המהווה ברירת מחדל עבור האירוע (כלומר, מה ש- Access עושה בדרך כלל כאשר האירוע מתרחש) מתרחש לאחר הפעלת המאקרו של האירוע. כך ניתן לבטל את אופן הפעולה המהווה ברירת מחדל. לדוגמה, בעת לחיצה כפולה על מילה שבה נמצאת נקודת הכניסה בתיבת טקסט, Access בוחר בדרך כלל את המילה. באפשרותך לבטל את אופן הפעולה המהווה ברירת מחדל במאקרו של האירוע DblClick ולבצע פעולה אחרת, כגון פתיחת טופס המכיל מידע על הנתונים בתיבת הטקסט. עבור אירועים שלא ניתן לבטל, אופן הפעולה המהווה ברירת מחדל מתרחש לפני הפעלת המאקרו.

הערה

אם מאפיין האירוע OnUnload של הטופס מציין מאקרו שמבצע פעולת CancelEvent, לא תוכל לסגור את הטופס. עליך לתקן את התנאי שגרם לביצוע הפעולה CancelEvent או לפתוח את המאקרו ולמחוק את הפעולה CancelEvent. אם הטופס הוא טופס מודאלי, לא תוכל לפתוח את המאקרו.

כדי לבצע את הפעולה CancelEvent במודול Visual Basic for Applications ‏(VBA), השתמש בפעולת השירות CancelEvent של האובייקט DoCmd.

דוגמה

אימות נתונים באמצעות מאקרו

מאקרו האימות הבא בודק את מספרי המיקוד שהוזנו בטופס ספקים. הוא מציג את השימוש בפעולות StopMacro, ‏MsgBox, ‏CancelEvent ו- GoToControl. ביטוי מותנה בודק את המדינה/האזור והמיקוד שהוזנו ברשומה בטופס. אם המיקוד אינו מופיע בתבנית הנכונה עבור המדינה/האזור, המאקרו מציג תיבת הודעה ומבטל את שמירת הרשומה. לאחר מכן, הוא מחזיר אותך לפקד המיקוד, שבו ניתן לתקן את השגיאה. יש לצרף מאקרו זה למאפיין BeforeUpdate של טופס הספקים.

תנאי פעולה ארגומנטים: הגדרה הערה
IsNull([CountryRegion])‎ StopMacro אם CountryRegion הוא Null, אין אפשרות לאמת את המיקוד.
[CountryRegion] In ("France","Italy","Spain") And Len([Postal Code]) <> 5 MsgBox הודעה: המיקוד חייב להכיל 5 תווים.
צפצוף: כן
סוג: מידע
כותרת: שגיאת מיקוד
אם המיקוד אינו מכיל 5 תווים, הצג הודעה.
... CancelEvent בטל את האירוע.
GoToControl שם פקד: PostalCode
[CountryRegion] In ("Australia","Singapore") And Len([Postal Code]) <> 4 MsgBox הודעה: המיקוד חייב להכיל 4 תווים.
צפצוף: כן
סוג: מידע
כותרת: שגיאת מיקוד
אם המיקוד אינו מכיל 4 תווים, הצג הודעה.
... CancelEvent בטל את האירוע.
GoToControl שם פקד: PostalCode
‎([CountryRegion] = "Canada") And ([Postal Code] Not Like"[A-Z][0-9][A-Z] [0-9][A-Z][0-9]")‎ MsgBox הודעה: המיקוד אינו חוקי. דוגמה של מיקוד בקנדה: ‎H1J 1C3
צפצוף: כן
סוג: מידע
כותרת: שגיאת מיקוד
אם המיקוד אינו נכון עבור קנדה, הצג הודעה. (דוגמה של מיקוד בקנדה: ‎H1J 1C3)
... CancelEvent בטל את האירוע.