소셜 미디어 에서 OnTime 이벤트 및 키 누르기 이벤트를 사용하는 방법 Excel 2016 VBA에서 인서트 이벤트 및 키 누르기 이벤트 사용 방법 - 인형

에서 OnTime 이벤트 및 키 누르기 이벤트를 사용하는 방법 Excel 2016 VBA에서 인서트 이벤트 및 키 누르기 이벤트 사용 방법 - 인형

차례:

비디오: Excel 2016 VBA Beginner Tutorial - Introduction to Macros & VBA 2024

비디오: Excel 2016 VBA Beginner Tutorial - Introduction to Macros & VBA 2024
Anonim

개체와 관련이없는 Excel 2016 용 VBA 프로그래밍에는 시간 및 키 누르기의 두 가지 유형의 이벤트를 사용할 수 있습니다. 시간 및 키 누르기는 통합 문서 나 워크 시트와 같은 특정 개체와 관련이 없으므로 이러한 이벤트는 일반 VBA 모듈에서 프로그래밍합니다.

OnTime 이벤트

OnTime 이벤트는 특정 시간대가 발생할 때 발생합니다. 다음 예제는 Excel에서 프로 시저를 실행할 때 3p. 엠. 이벤트가 발생합니다. 이 경우 로봇 음성 메시지 상자와 함께 일어나기를 알려줍니다:

Sub SetAlarm () 응용 프로그램. OnTime 0. 625, "DisplayAlarm"End Sub Sub DisplayAlarm () 응용 프로그램. 연설. 말하기 ("Hey, wake up") MsgBox "오후 휴식 시간입니다! "End Sub

이 예제에서는 Application 개체의 OnTime 메서드가 사용됩니다. 이 메서드는 시간 (0. 625 또는 3: 00 p.m.)과 시간 이벤트가 발생할 때 실행할 Sub 프로 시저의 이름 (DisplayAlarm)의 두 인수를 사용합니다.

이 과정은 당신이 회의 및 약속에 대해 잊어 버린 일에 너무 감싸는 경향이있는 경우에 매우 유용합니다. 자신에게 상기시키기 위해 OnTime 이벤트를 설정하기 만하면됩니다.

대부분의 사람들은 Excel 번호 매기기 시스템으로 시간을 생각하는 것을 어렵게 느낍니다. 따라서 VBA TimeValue 함수를 사용하여 시간을 나타낼 수 있습니다. TimeValue는 시간처럼 보이는 문자열을 Excel에서 처리 할 수있는 값으로 변환합니다. 다음 문장은 3 p에 대해 이벤트를 프로그래밍하는 더 쉬운 방법을 보여줍니다. 엠.:

신청서. OnTime TimeValue ("3: 00: 00 pm"), "DisplayAlarm"

현재 시간을 기준으로 이벤트를 예약하려는 경우 (예: 20 분 후) 다음과 같은 구문을 사용할 수 있습니다. < 신청서. OnTime Now + TimeValue ("00: 20: 00"), "DisplayAlarm"

OnTime 메서드를 사용하여 특정 날짜에 VBA 프로 시저를 실행할 수도 있습니다. 컴퓨터가 계속 실행되고 절차가 포함 된 통합 문서가 열려 있는지 확인해야합니다. 다음 명령문은 5p에서 DisplayAlarm 프로 시저를 실행합니다. 엠. 2016 년 12 월 31 일:

신청서. OnTime DateValue ("12/31/2016 5:00 pm"), "DisplayAlarm"

이 특별한 코드 행은 집에 가서 섣달 그믐 날의 축제를 준비해야한다고 경고하기 위해 편리 할 수 ​​있습니다.

OnTime 이벤트를 사용하는 또 다른 예가 있습니다. UpdateClock 프로 시저를 실행하면 A1 셀에 시간을 기록하고 5 초 후에 다른 이벤트를 프로그램합니다.이 이벤트는 UpdateClock 프로 시저를 다시 실행합니다. 순 효과는 셀 A1이 5 초마다 현재 시간으로 업데이트된다는 것입니다. 이벤트를 중지하려면 StopClock 프로 시저 (이벤트를 취소 함)를 실행하십시오. NextTick은 다음 이벤트의 시간을 저장하는 모듈 수준의 변수입니다.

Dim NextTick As Date Sub UpdateClock () '셀 A1을 현재 시간 ThisWorkbook으로 업데이트합니다. 시트 (1). 범위 ("A1") = 시간 '다음 이벤트를 5 초 후에 설정하십시오. NextTick = Now + TimeValue ("00: 00: 05"). OnTime NextTick, "UpdateClock"End Sub Sub StopClock () 'OnTime 이벤트를 취소합니다 (시계를 중지). On Error 다음 응용 프로그램을 다시 시작합니다. OnTime NextTick, "UpdateClock", False End Sub

OnTime 이벤트는 통합 문서를 닫은 후에도 유지됩니다. 즉, StopClock 프로 시저를 실행하지 않고 통합 문서를 닫으면 통합 문서가 5 초 안에 다시 열립니다 (Excel이 아직 실행 중이라고 가정). 이 문제를 방지하려면 다음 문을 포함하는 Workbook_BeforeClose 이벤트 프로 시저를 사용하십시오.

Call StopClock

OnTime 메서드에는 두 개의 추가 인수가 있습니다. 이 방법을 사용하려면 자세한 내용을 보려면 도움말 시스템을 참조해야합니다.

다소 복잡한 응용 프로그램을보고 싶다면이 아날로그 시계 응용 프로그램을 확인하십시오. 시계 모양면은 실제로 차트이며 차트는 하루 중 시간을 표시하기 위해 매초마다 업데이트됩니다. 쓸모 없지만 재미 있습니다.

아날로그 시계 응용 프로그램입니다.

키 누르기 이벤트

작업하는 동안 Excel은 사용자가 입력하는 내용을 지속적으로 모니터링합니다. 이 때문에 키 입력이나 키 조합이 프로 시저를 실행하도록 설정할 수 있습니다.

다음은 PgDn 및 PgUp 키를 다시 할당하는 예입니다.

Sub Setup_OnKey () Application. OnKey "{PgDn}", "PgDn_Sub"응용 프로그램. OnKey "{PgUp}", "PgUp_Sub"End Sub Sub PgDn_Sub () On Error 다음 ActiveCell을 다시 시작합니다. 오프셋 (1, 0). Activate End Sub Sub PgUp_Sub () On Error 다음 ActiveCell을 다시 시작합니다. 오프셋 (-1, 0). Activate End Sub

Setup_OnKey 프로 시저를 실행하여 OnKey 이벤트를 설정 한 후 PgDn을 누르면 한 행 아래로 이동합니다. PgUp 키를 누르면 한 행 위로 이동합니다.

키 코드는 괄호로 묶지 않고 괄호로 묶습니다. 키보드 코드의 전체 목록을 보려면 도움말 시스템을 참조하십시오.

OnKey를 검색하십시오. 이 예에서 On Error Resume Next는 생성 된 모든 오류를 무시하는 데 사용됩니다. 예를 들어, 활성 셀이 첫 번째 행에있는 경우 한 행 위로 이동하려고하면 안전하게 무시할 수있는 오류가 발생합니다. 차트 시트가 활성 상태이면 활성 셀이 없습니다.

다음 루틴을 실행하면 OnKey 이벤트가 취소됩니다.

Sub Cancel_OnKey () Application. OnKey "{PgDn}"응용 프로그램. OnKey 메서드의 두 번째 인수로 빈 문자열을 사용하면

OnKey 이벤트를 취소하지 않습니다

. 오히려 Excel이 키 입력을 무시하게 만듭니다. 예를 들어, 다음 명령문은 Excel에 Alt + F4를 무시하도록 지시합니다. 백분율 기호는 응용 프로그램의 Alt 키를 나타냅니다.OnKey "% {F4}", "" OnKey 메서드를 사용하여 매크로를 실행하는 바로 가기 키를 할당 할 수 있지만이 작업에 대해 매크로 옵션 대화 상자를 사용해야합니다.

코드가 포함 된 통합 문서를 닫고 Excel을 열린 상태로두면 OnKey 메서드가 다시 설정되지 않습니다. 결과적으로 바로 가기 키를 누르면 Excel이 매크로로 파일을 자동으로 엽니 다. 이 문제를 방지하려면 OnKey 이벤트를 다시 설정하려면 Workbook_BeforeClose 이벤트 코드에 코드를 포함해야합니다.
에서 OnTime 이벤트 및 키 누르기 이벤트를 사용하는 방법 Excel 2016 VBA에서 인서트 이벤트 및 키 누르기 이벤트 사용 방법 - 인형

편집자의 선택

가족 - 춤으로 묵상하는 법

가족 - 춤으로 묵상하는 법

당신이 싹 트고 명상하는 사람이라면 가족 생활은 두 가지 도전을 제기합니다. 한편으로는 사랑하는 사람을 초대하거나 격려하거나 심지어 강요하여 당신과 명상하는 경향이 있습니다. 다른 한편으로, 가장 가까운 사람들이 당신의 허약하고 새롭게 태어난 마음의 평화를 방해하지 않는다는 것을 알 수 있습니다.

에센셜 오일을 식별하고 사용하는 방법 - 인체

에센셜 오일을 식별하고 사용하는 방법 - 인체

에센스는 에센셜 오일 어떤 식물에서 파생 된. 시간이 지남에 따라 이러한 오일은 아로마 테라피, 청소, 식사, 곤충 방수제 및 경우에 따라 약을 비롯한 많은 용도로 만들어졌습니다. 크레딧 : © IStockphoto. com / botamochi 이러한 오일은 기술적으로 건강에 필수적인 것은 아니지만보다 현대적인 합성 방법에 대한 대안을 제공합니다 ...

우울증에 어떻게 대처할 것인가 - 모든 정신 건강 상태의 더미

우울증에 어떻게 대처할 것인가 - 모든 정신 건강 상태의 더미

, 우울증은 Mindfulness에 응답하십시오. 증거의 시체가 계속 성장한다면, 마음가짐은 전 세계의 우울증 치료를위한 표준 치료가 될 것입니다. 우울증은 슬픔과 다릅니다. 슬픔은 모든 사람이 경험하는 자연스럽고 건강한 감정입니다.

편집자의 선택

테니스 라켓 선택 - 인형

테니스 라켓 선택 - 인형

예, 5 년 전에 연주 한 라켓을 털어서 줄 수 있습니다. 법정에 영광 스럽은 반환 - 당신의 손에서 좋게 느끼면 그것은 당신이 그들을 가고 싶은 곳에 (그리고 어떻게) 당신의 탄을 얻는다. 그러나 새로운 무기를 시장에 내놓은 경우 ...

슬라이싱 및 다이 싱, 테니스 스타일 - 더미

슬라이싱 및 다이 싱, 테니스 스타일 - 더미

슬라이스 또는 백 스핀은 테니스 공을 영향의 원천 (당신). 슬라이스 샷이 튀어 오면 공은 낮게 유지되어 상대방이 정말로 공을 잡아 당겨야합니다. 선수들이 그물과 발리를 공격하기를 원한다면, 그들은 많은 양을 차지한다. 슬라이스는 유용 할 수 있습니다 ...

테니스 인형 용 치트 시트 - 인형

테니스 인형 용 치트 시트 - 인형

테니스는 법원에서 진행되므로 법원 주위에서 길을 알고있는 것이 하나입니다 테니스 선수로 마스터 할 첫 번째 것들. 테니스 용어에 익숙하다면 게임을 할 수 있습니다. 알아야 할 용어 중 하나는 Tiebreaker이므로 하나가되면 게임을 할 수 있습니다 ...

편집자의 선택

Joomla의 기사에 이미지 삽입하기 - 더미

Joomla의 기사에 이미지 삽입하기 - 더미

이미지 파일 저장 Joomla의 미디어 관리자에서 기사에 표시 할 수 있습니다. 사실 동일한 그림을 두 개 이상의 기사에 표시 할 수 있습니다. Joomla에서는 사용자가 요청할 때까지 웹 페이지가 존재하지 않는다는 것을 기억하십시오. 그런 다음 Joomla는 이미지 파일을 포함하여 데이터베이스에서 필요한 모든 요소를 ​​가져 와서 빌드합니다.

로컬 Mac OS X Server에 Joomla 환경을 설치하는 방법 - 인형

로컬 Mac OS X Server에 Joomla 환경을 설치하는 방법 - 인형

XAMPP는 Joomla가 Joomla 관리자로서의 삶을 좀 더 쉽게 만들어 줄 수있는 다른 도구와 함께 Apache 웹 서버, PHP 및 MySQL을 포함하여 Joomla가 실행해야하는 모든 도구를 설치합니다. XAMPP는 Joomla에 대한 완전한 토대를 제공합니다. Joomla를 압축 해제하고 설치하는 것뿐입니다. XAMPP는 ...

Joomla에서 메뉴 항목을 카테고리에 링크하는 방법 - Joomla에서 분류 된 기사의 경우

Joomla에서 메뉴 항목을 카테고리에 링크하는 방법 - Joomla에서 분류 된 기사의 경우

귀하의 웹 사이트 사용자가 볼 수 있도록, 당신은 Joomla 메뉴 항목을 게시하려는 기사가 포함 된 Joomla 카테고리에 연결해야합니다. 범주를 메뉴 항목에 연결하면 해당 범주의 모든 기사를 관련 메뉴 항목을 통해 사용할 수 있습니다. 만들려면 ...