Mal eben schnell alle offenen Formulare auflisten

Letzte Änderung am 18. Februar 2022 by Christoph Jüngling

Mal eben schnell nachschauen, welche Formulare gerade offen sind (auch wenn sie versteckt sind), ist kein großes Problem. Dieser Code läuft unter VB6 ebenso wie in Access und ist versionsnummernunabhängig.

Dieses kleine Hilfsmittel ist in Projekten sehr nützlich, die nicht von mir sind, in denen ich mir also die Namen der zahlreichen Formulare nicht selbst ausgedacht habe. Manchmal kommt es nämlich vor, dass jemand ein Formular zum Öffnen einer bestimmten Datei genau so nennt, wie der Dateityp, z.B. “OpenExcelFile”. Und dann fällt ihm ein, dass das Formular genauso gut für Word-Dateien genutzt werden kann (was gut ist), benennt es aber nicht um (was nicht so gut ist).

Ich habe mich für “f” als Namen für die Subroutine entschieden, weil ich das häufig brauche und nicht jedes Mal so was langes wie “ShowAllCurrentlyOpenForms” eintippen möchte. Würde es sich um eine normale Funktion/Subroutine handeln, wäre “f” natürlich ein ausgesprochen dämlicher Name.

''
' Display name and caption of currently open forms in debug window
'
' @remarks  License: Do what you want, credit welcome :-)
' @author   Christoph Juengling, www.juengling-edv.de
'
Public Sub f()

Dim i As Integer
Dim chars As Integer

'------------------------

Debug.Print Forms.count + " open forms at " + Now()

chars = 0

' Get longest name
For i = 0 To Forms.count - 1
    If Len(Forms(i).name) > chars Then chars = Len(Forms(i).name)
Next i

' Print open form names
For i = 0 To Forms.count - 1
    Debug.Print i; Tab(5); Forms(i).name; Tab(chars + 8); Forms(i).caption
Next i

Debug.Print

End Sub

Wenn du das in VB6 benutzen willst, musst du vorher die Programmausführung pausieren, da sonst im Debug-Fenster keine Aktionen durchgeführt werden können. Danach einfach mit F5 oder dem Klick auf das Dreieck weiter machen.

Dieser Code-Schnipsel kann auch von meiner Codesammlung VB and VBA Code Library bei Bitbucket GitLab heruntergeladen werden (siehe auch diesen Artikel). Wer nicht mit Mercurial Git vertraut ist, kann auf den dortigen Download-Link klicken. Der jeweils aktuellste Stand wird dann als ZIP-Archiv angeboten.

Wer sich an der Sammlung beteiligen will, macht bitte einen “fork“, trägt seine Änderungen ein und schickt mir dann einen “pull request”.

Ähnliche Artikel:

Schreibe einen Kommentar

Deine Email-Adresse wird nicht veröffentlicht.

11 + 16 =