비디오: Web Programming - Computer Science for Business Leaders 2016 2024
VBA에서 이벤트 처리기 프로 시저를 작성하는 방법을 알고 있습니까? VBE는 이벤트 핸들러 프로 시저를 작성할 준비가되었을 때 도움을 주며, 선택한 객체에 대한 모든 이벤트 목록을 표시합니다.
각 코드 창의 맨 위에 두 개의 드롭 다운 목록이 있습니다.
-
Object 드롭 다운 목록 (왼쪽에있는 것)
-
Procedure 드롭 다운 목록 (오른쪽에있는 것)
기본적으로 코드 창에있는 개체 드롭 다운 목록에 General이 표시됩니다.
ThisWorkbook 개체의 이벤트 처리기를 작성하려면 프로젝트 창에서 ThisWorkbook을 클릭 한 다음 Object 드롭 다운에서 Workbook을 선택해야합니다. 유일한 다른 선택).
Sheet 객체에 대한 이벤트 핸들러를 작성하는 경우 프로젝트 창의 특정 시트를 클릭 한 다음 객체 드롭 다운 목록에서 워크 시트를 선택해야합니다 (다시, 유일한 다른 선택).
Object 드롭 다운 목록에서 원하는 항목을 선택한 후 Procedure 드롭 다운 목록에서 이벤트를 선택할 수 있습니다. 다음은 통합 문서 관련 이벤트에 대한 몇 가지 선택 사항입니다.
ThisWorkbook 개체의 코드 창에서 이벤트 선택.목록에서 이벤트를 선택하면 VBE가 자동으로 이벤트 처리기 프로 시저를 만들기 시작합니다. 이는 적절한 인수가 무엇인지 정확하게 알려주기 때문에 매우 유용한 기능입니다.
약간의 변덕이 있습니다. 개체 목록에서 통합 문서를 처음 선택하면 VBE는 항상 Open 이벤트에 대한 이벤트 처리기 프로 시저를 만들고이를 대신 생성하려고한다고 가정합니다. 실제로 Workbook_Open 프로 시저를 만드는 중이라면 괜찮습니다. 그러나 다른 이벤트 프로 시저를 작성하는 경우, 작성된 빈 Workbook_Open Sub를 삭제해야합니다.
VBE의 도움은 현재까지만 가능합니다. Sub 문 및 End Sub 문을 씁니다. 이 두 문장 사이에있는 VBA 코드를 작성하면 작업이 완료됩니다.
실제로 두 개의 드롭 다운 목록을 사용할 필요는 없지만 그렇게하면 이벤트 처리기 프로 시저의 이름이 매우 중요하기 때문에 작업을보다 쉽게 수행 할 수 있습니다. 이름을 정확하게 입력하지 않으면 절차가 작동하지 않습니다. 또한 일부 이벤트 처리기 프로시 저는 Sub 문에서 하나 이상의 인수를 사용합니다. 그 주장이 무엇인지 기억할 수있는 방법이 없습니다. 예를 들어, 통합 문서 개체의 이벤트 목록에서 SheetActivate를 선택하면 VBE는 다음 Sub 문을 작성합니다.
Private Sub Workbook_SheetActivate (ByVal Sh As Object)
이 경우 Sh는 프로 시저에 전달 된 인수입니다 활성화 된 통합 문서의 시트를 나타내는 변수입니다.