목차 열기
티스토리 뷰
728x90
반응형
VBA WinAPI / user32 - SetForegroundWindow
이 글은 Excel VBA 코딩 중, Windows API 함수를 사용하는 과정을 기록하기 위한 것이므로 이 점 참고 바랍니다.
이 포스팅은 Excel VBA에서 Win API를 사용하는 것에 대해 다룹니다.
user32 - SetForegroundWindow
프로그램 창을 최상위로 활성화하고, 키보드 포커스를 창으로 맞추며
사용자 시각 효과가 변경됩니다. 시스템은 다른 스레드보다 포커스 창에 더 높은 우선순위를 할당합니다.
Microsoft technical documentation
https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-setforegroundwindow
함수 선언
코드 상단에 추가해서 사용합니다.
#If VBA7 Then
Public Declare PtrSafe Function SetForegroundWindow Lib "user32" _
(ByVal hwnd As LongPtr) As Long
#Else
Public Declare Function SetForegroundWindow Lib "user32" Alias "SetForegroundWindow" _
(ByVal hwnd As Long) As Long
#End If
설명 및 예제
- 작업이 성공하면 0이 아닌 값이 반환됩니다.
- 작업이 실패하면 0이 반환됩니다.
Function SetForegroundWindow(
(ByVal hwnd As LongPtr) As Long '핸들 윈도우
'작업 실패
Debug.Print SetForegroundWindow(0) '0
'작업 성공 (메모장)
Debug.Print FindWindow(vbNullString, "제목 없음 - Windows 메모장") '788194
Debug.Print SetForegroundWindow(788194) ' 1
INDEX
728x90
반응형
'VBA > WinAPI' 카테고리의 다른 글
VBA WinAPI / INDEX (1) | 2022.08.28 |
---|---|
VBA WinAPI / user32 - ShowWindowAsync (0) | 2022.08.28 |
VBA WinAPI / user32 - GetWindowText (0) | 2022.08.27 |
VBA WinAPI / user32 - GetClassName (0) | 2022.08.27 |
VBA WinAPI / user32 - FindWindow & FindWindowEx (0) | 2022.08.27 |
VBA WinAPI / Windows API Viewer for MS Excel (0) | 2022.08.25 |
VBA WinAPI / Windows Detective (0) | 2022.08.25 |
댓글