Dialogfelder

Abbildung 179, Beispiel eines Dialogfeldes

Excel bietet die Möglichkeit, eigene Dialogfelder aufzubauen, sog. Forms.

An einem kleinen Beispiel wollen wir die Vorgehensweise bei der Erstellung einer Form kennenlernen.

Zum Erstellen einer Form wechselt man man mit Alt + F11 in die VBA-Entwicklungsumgebung und wählt den Befehl Einfügen – UserForm.

Abbildung 180, Leere UserForm mit 'Werkzeugkiste'

Es öffnet sich eine leere UserForm und zusätzlich die Symbolleiste Steuerelement-Toolbox (s. Abbildung 180). Sie befinden sich im sog. Entwurfsmodus.

Um ein Steuerelement in die Form zu bringen, klicken Sie das jeweilige Symbol in der Werkzeugsammlung an, lassen dann die Maustaste wieder los und führen den Mauszeiger auf die Form. Es erscheint ein kleines Fadenkreuz, das Ihnen die Positionierung des Steuerelements erlaubt.

Drücken Sie nun die Maustaste erneut, halten sie gedrückt und ziehen das Element auf.
Wir wählen als Beispiel einen CommandButton (Befehlsschaltfläche).

Abbildung 181, Ein CommandButton wird aufgezogen.

Klicken Sie das neue Steuerelement mit der rechten Maustaste an: Im Kontextmenü erscheint der Befehl Code anzeigen

Abbildung 182, Das Kontextmenü des Steuerelements

Ruft man den Befehl Code anzeigen auf, so sieht man den (noch) leeren Prozedurrumpf für das Klick-Ereignis des Buttons:

Private Sub CommandButton1_Click()

End Sub

Das rechte Listenfeld oberhalb des Codefensters zeigt Ihnen weitere Ereignisse des Steuerelements:

Abbildung 183, Der CommandButton kennt noch eine Reihe weiterer Ereignisse

Um den Mechanismus auszuprobieren, schreiben Sie in die Prozedur (also zwischen die Zeilen Private Sub und End Sub die Codezeile:

Unload me

Klicken Sie in die Prozedur und betätigen die Funktionstaste F5. Die Form wird ausgeführt, d.h. sie befindet sich nicht mehr im Entwurfsmodus, sondern im normalen Funktionsmodus.
Um aus einem VBA-Programm heraus eine Form auszuführen, benutzen Sie die Show-Methode:

Userform1.show

Abbildung 184, Die ausgeführte Form

Eine UserForm kann gebunden oder ungebunden sein.
Wenn ein UserForm-Objekt gebunden ist, muß der Benutzer reagieren, bevor er einen anderen Teil der Anwendung verwenden kann. Es wird kein nachfolgender Code ausgeführt, bis das UserForm-Objekt ausgeblendet oder entladen wird.
Standardmäßig ist eine UserForm gebunden, dieses Verhalten kann über die Eigenschaft ShowModal = False umgesteuert werden.

Dann ist auch bei geöffneter Userform ein Arbeiten in der Tabelle möglich.

Ein Klick auf den CommandButton startet die Prozedur, der Befehl Unload me wird ausgeführt, die UserForm wird geschlossen.

Steuerelemente haben eine Reihe von Eigenschaften, die man entweder im Eigenschaftsfenster dauerhaft vorgeben, oder per Programm setzen kann.

Der Befehl Ansicht – Eigenschaftsfenster öffnet das Fenster.

Abbildung 185, Im Eigenschaftsfenster lassen sich für das markierte Objekt Eigenschaften festlegen

Wählen Sie beispielsweise die Eigenschaft Caption (Aufschrift) mit o.k. und ControlTipText mit Klick schließt die Form und betrachten das Ergebnis, indem Sie auf den blauen Rand der Form klicken und dann mit F5 die Form ausführen.

Im Prinzip werden auf die gleiche Weise die weiteren Steuerelemente aus der Toolbox behandelt.
Allerdings sind die meisten Steuerelemente komplexer als der CommandButton, daher werden im folgenden die wichtigsten Elemente mit umfangreichen Beispielen vorgestellt.

Nicht gefunden, was Sie suchen? Dann geben Sie hier Ihren Suchbegriff ein!

Benutzerdefinierte Suche


More:

Initialisieren