Microsoft로 로그인
로그인하거나 계정을 만듭니다.
안녕하세요.
다른 계정을 선택합니다.
계정이 여러 개 있음
로그인할 계정을 선택합니다.

CancelEvent 매크로 함수를 사용하면 Access에서 이 매크로 함수가 포함된 매크로 실행 이벤트를 취소할 수 있습니다. 이 경우 BeforeUpdate, OnOpen, OnUnload 또는 OnPrint와 같은 이벤트 속성의 설정값이 매크로의 이름이 됩니다.

참고: Access 웹 앱에서는 CancelEvent 매크로 함수를 사용할 수 없습니다.

설정

CancelEvent 매크로 함수에는 인수가 없습니다.

주의

폼에서는 일반적으로 CancelEvent 매크로 함수를 유효성 검사 매크로에서 BeforeUpdate 이벤트 속성과 함께 사용합니다. 사용자가 컨트롤 또는 레코드에 데이터를 입력하면 Access에서 입력된 데이터를 데이터베이스에 추가하기 전에 유효성 검사 매크로를 실행합니다. 데이터가 매크로의 유효성 검사 조건에 맞지 않으면 CancelEvent 매크로 함수가 업데이트 프로세스가 시작되기 전에 프로세스를 취소합니다.

데이터가 유효성 검사 조건에 맞지 않음을 나타내고 입력해야 할 데이터 형식에 대한 유용한 정보를 제공하기 위해 이 함수와 MsgBox 매크로 함수를 함께 사용하는 경우가 많습니다.

CancelEvent 매크로 함수로 취소할 수 있는 이벤트는 다음과 같습니다.

ApplyFilter

Dirty

MouseDown

BeforeDelConfirm

Exit

NoData

BeforeInsert

Filter

Open

BeforeUpdate

Format

Print

DblClick

KeyPress

Unload

Delete


참고:  MouseDown 이벤트에 CancelEvent 매크로 함수를 사용할 경우에는 개체를 마우스 오른쪽 단추로 클릭할 때 발생하는 이벤트만 취소할 수 있습니다.

컨트롤의 OnDblClick 이벤트 속성 설정에 CancelEvent 매크로 함수가 있는 매크로가 지정되어 있으면 이 매크로 함수에 의해 DblClick 이벤트가 취소됩니다.

취소할 수 있는 이벤트의 경우 이벤트에 대한 매크로가 실행된 후 이벤트에 대한 기본 동작(즉, 일반적으로 이벤트가 발생할 때 Access가 수행하는 동작)이 발생합니다. 이렇게 하면 기본 동작을 취소할 수 있습니다. 예를 들어 삽입 지점이 텍스트 상자 있는 단어를 두 번 클릭하면 Access에서 일반적으로 단어를 선택합니다. DblClick 이벤트에 대한 매크로에서 이 기본 동작을 취소하고 텍스트 상자의 데이터에 대한 정보가 포함된 폼을 여는 등의 다른 작업을 수행할 수 있습니다. 취소할 수 없는 이벤트의 경우 매크로가 실행되기 전에 기본 동작이 발생합니다.

참고: 폼의 OnUnload 이벤트 속성에 CancelEvent 매크로 함수를 실행하는 매크로가 지정되어 있으면 폼을 닫을 수 없습니다. 이 경우 CancelEvent 매크로 함수의 실행 조건을 수정하거나 매크로를 열어 CancelEvent 매크로 함수를 삭제해야 합니다. 모달 폼인 경우에는 매크로를 열 수 없습니다.

VBA(Visual Basic for Applications) 모듈에서 CancelEvent 매크로 함수를 실행하려면 DoCmd 개체의 CancelEvent 메서드를 사용합니다.

예제

매크로를 사용한 데이터 유효성 검사

다음 유효성 검사 매크로는 Suppliers 양식에 입력된 우편 번호를 확인합니다. StopMacro, MsgBox, CancelEventGoToControl 작업의 사용을 보여 줍니다. 조건식은 양식의 레코드에 입력된 국가/지역 및 우편 번호를 확인합니다. 우편 번호가 국가/지역에 적합한 형식이 아닌 경우 매크로는 메시지 상자를 표시하고 레코드 저장을 취소합니다. 그런 다음, 오류를 수정할 수 있는 우편 번호 컨트롤로 돌아갑니다. 이 매크로는 Suppliers 양식의 BeforeUpdate 속성에 연결해야 합니다.

조건

매크로 함수

인수: 설정

설명

IsNull([국가/지역])

StopMacro

국가/지역의 값이 Null이면 우편 번호에 대한 유효성 검사가 실행되지 않습니다.

[국가/지역] In ("프랑스","이탈리아","스페인") And Len([우편 번호]) <> 5

MsgBox

메시지: 우편 번호는 5개의 문자로 이루어져야 합니다.

경고음:

종류: 정보

제목: 우편 번호 오류

우편 번호가 5개의 문자로 이루어지지 않은 경우 메시지를 표시합니다.

...

CancelEvent

이벤트를 취소합니다.

GoToControl

컨트롤 이름: PostalCode

[국가/지역] In ("오스트레일리아","싱가포르") And Len([우편 번호]) <> 4

MsgBox

메시지: 우편 번호는 4개의 문자로 이루어져야 합니다.

경고음:

종류: 정보

제목: 우편 번호 오류

우편 번호가 4개의 문자로 이루어지지 않은 경우 메시지를 표시합니다.

...

CancelEvent

이벤트를 취소합니다.

GoToControl

컨트롤 이름: PostalCode

([국가/지역] = "캐나다") And ([우편 번호] Not Like"[A-Z][0-9][A-Z] [0-9][A-Z][0-9]")

MsgBox

메시지: 유효하지 않은 우편 번호입니다. 캐나다의 우편 번호는 H1J 1C3과 같은 형식으로 이루어져야 합니다.

경고음:

종류: 정보

제목: 우편 번호 오류

우편번호가 캐나다의 우편 번호 형식에 맞지 않으면 메시지를 표시합니다. (캐나다의 우편 번호는 H1J 1C3과 같은 형식으로 이루어져야 합니다.)

...

CancelEvent

이벤트를 취소합니다.

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.

이 정보가 유용한가요?

언어 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?
제출을 누르면 피드백이 Microsoft 제품과 서비스를 개선하는 데 사용됩니다. IT 관리자는 이 데이터를 수집할 수 있습니다. 개인정보처리방침

의견 주셔서 감사합니다!

×