Wenn Sie den Titel des aktuellen Fensters, also beispielsweise des Access-Fensters, ermitteln möchten (s. Bild 1), benötigen Sie zwei API-Funktionen und eine VBA-Funktion, welche die beiden zum Ermitteln des Fenstertitels nutzt.
Bild 1: Titel des Access-Fensters
Diese Elemente haben wir in der Beispieldatenbank zu diesem Beitrag im Modul mdlAPI untergebracht (s. Listing 1). Die Funktion GetActiveWindowTitle ermittelt zunächst das Handle des mit der API-Funktion GetForegroundWindow ermittelten Fensters. Um nun mit der Funktion GetWindowText den Fenstertitel zu ermitteln, müssen wir zunächst eine String-Variable mit 255 Leerzeichen füllen.
Private Declare Function GetForegroundWindow Lib "user32" () As Long Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, _ ByVal lpString As String, ByVal cch As Long) As Long Public Function GetActiveWindowTitle() As String Dim nHWnd As Long Dim sTitle As String Dim nResult As Long nHWnd = GetForegroundWindow() sTitle = Space$(255) nResult = GetWindowText(nHWnd, sTitle, Len(sTitle)) GetActiveWindowTitle = Left$(sTitle, nResult) End Function