Efectivamente Igor. Encontré un código que funciona perfectamente.
Gracias por la ayuda.
Aquí os dejo el código por si le ayuda a alguien.
Option Explicit
'Constantes
Const HWND_TOPMOST = -1
Const HWND_NOTOPMOST = -2
Const SWP_NOSIZE = &H1
Const SWP_NOMOVE = &H2
Const SWP_NOACTIVATE = &H10
Const SWP_SHOWWINDOW = &H40
' funciones Api
Private Declare Sub SetWindowPos Lib "User32" ( _
ByVal hWnd As Long, _
ByVal hWndInsertAfter As Long, _
ByVal X As Long, _
ByVal Y As Long, _
ByVal cx As Long, _
ByVal cy As Long, _
ByVal wFlags As Long)
'Función que recupera el texto de la ventana
Private Declare Function GetWindowText Lib "User32" Alias "GetWindowTextA" _
(ByVal hWnd As Long, _
ByVal lpString As String, _
ByVal cch As Long) As Long
' Recupera el Hwnd de la ventana
Private Declare Function GetForegroundWindow Lib "User32" () As Long
'---------------------
Private Sub Timer4_Timer()
Dim hwnd_Ventana As Long
Dim Caption_Ventana As String
Dim length As Long
' Captura el Hwnd de la ventana activa
hwnd_Ventana = GetForegroundWindow()
'Crea un Buffer para el caption del title bar
Caption_Ventana = Space$(1024)
' Retorna la cantidad de caracteres
length = GetWindowText(hwnd_Ventana, Caption_Ventana, Len(Caption_Ventana))
' Obtiene solo el caption sin los espacios nulos de la cadena
Caption_Ventana = Left$(Caption_Ventana, length)
Me.Cls
'Imprime el caption de la ventana que tiene el foco en el _
formulario y el HWND
Me.Print "HWND: -> " & CStr(hwnd_Ventana)
Me.Print "Título: -> " & Caption_Ventana
End Sub