Declare Function GetForegroundWindow Lib "user32" () As Long
GetForegroundWindow находит, какое окно является в настоящее время приоритетным окном. Приоритетное окно - окно, обычно наверху Z-order, с которым пользователь в настоящее время работает - то есть, окно с фокусом
Функция возвращает 0 в случае ошибки или описатель приоритетного окна в успешном случае.
' Отобразим заголовок приоритетного окна Dim hforewnd As Long ' описатель приоритетного окна Dim slength As Long ' длина заголовка приоритетного окна Dim wintext As String ' буфер для хранения заголовка приоритетного окна Dim retval As Long ' возвращаемое значение hforewnd = GetForegroundWindow() ' определяем приоритетное окно slength = GetWindowTextLength(hforewnd) + 1 ' длина заголовка этого окна wintext = Space(slength) ' создаем место в буфере для хранения заголовка retval = GetWindowText(hforewnd, wintext, slength) ' получаем текст заголовка wintext = Left(wintext, slength - 1) ' удаляем нулевой символ в конце строки Debug.Print "Окно "; wintext; " является приоритетным окном"