2020. 7. 25. 21:18ㆍ업무 스킬/Excel VBA
[Onkey] 메서드는 대부분 [UserForm]을 실행하는 단축키를 지정할 때 많이 사용합니다.
주의할 점은, [Onkey]를 사용한 단축키 지정이 엑셀 단축키와 겹칠 경우, [Onkey]가 상위 포지션에
위치하게 되므로 엑셀 단축키는 작동을 하지 않게 됩니다.
때문에 엑셀 단축키가 없는 키나 잘 사용되지 않는 키로 지정하는 것이 좋습니다.
참고로 저는 주로 {F3}키를 사용하여, [UserForm]을 실행합니다.
수식에 대해 하나씩 알아보겠습니다.
[Application.Onkey]까지 작성해주면 위 그림과 같은 형태로 나오게 됩니다.
순서대로
① 단축키로 사용될 Key와
② 단축키로 실행될 Procedure명을 뜻합니다.
저는 대부분 {F3}키를 단축키로 사용하기 때문에 아래 그림과 같이 작성합니다.
주의할 점은 단축키 명을 꼭 큰 따옴표("") 안에 들어가야 하며, 실행할 Procedure명도 동일하게 큰 따옴표("")
안에 들어가야 합니다.
실행될 Procedure가 있어야하기 때문에, [Onkey]를 설정하기에 앞서 실행될 Procedure를 만들어놔야겠지요
저는 "유저 폼_열기"라는 이름의 [UserForm]을 여는 Procedure을 만들었습니다.
단축키 설정은 대부분 [Alt], [Ctrl]와 저처럼 {F1]~{F12}의 Function키를 사용하는데요.
깔끔하게 이 3개의 [Onkey] 작성 문자만 알고 있으면 됩니다.
- Alt : %
- Ctrl : ^
- Function : {F숫자}
입니다. 예를 들어 내가 [Onkey]를 통해 단축키를 [Ctrl+m]으로 설정하고 싶다
그렇다면
Application.Onkey "^m" , "유저 폼_열기"
로 작성해주면 됩니다. 주의할 점은 영문을 꼭 소문자로 적어주셔야지 대문자로 적으면
대문자로 단축키가 설정되기 때문에 만약 "^M"으로 설정했다면 단축키 실행 시
[Ctrl] + [Shift] + [m]을 눌러야 되기 때문에 주의해야 합니다.
'업무 스킬 > Excel VBA' 카테고리의 다른 글
[엑셀 VBA] Function 프리시저 사용 법. (0) | 2020.08.18 |
---|---|
[Excel VBA] Userform Listbox를 통한 Sheet 검색 및 선택 (0) | 2020.08.03 |
[엑셀 VBA] User Form(사용자 정의 폼)의 List Box 활용하기 (0) | 2020.07.17 |
[엑셀 VBA] Private, Public 문을 사용하는 변수 사용 (0) | 2020.06.30 |
[엑셀 VBA] CHART X,Y축 글씨 크기 변경 (0) | 2020.04.13 |