Abbildung 187, 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 188, Leere UserForm mit 'Werkzeugkiste'
Es öffnet sich eine leere UserForm und zusätzlich die Symbolleiste Steuerelement-Toolbox (s. Abbildung 188). 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 189, Ein CommandButton wird aufgezogen.
Klicken Sie das neue Steuerelement mit der rechten Maustaste an: Im Kontextmenü erscheint der Befehl Code anzeigen
Abbildung 190, 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 191, 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 192, Die ausgeführte Form
Eine UserForm kann
gebunden oder ungebunden sein. 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 193, 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 entfernt 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.