VBA Code bei Klick auf Button ausführen (Button Click event)

VBA - Visual Basic for Application

Wer Microsoft Office nutzt kann sich viele routinemäßige Aufgaben vereinfachen, indem man VBA einsetzt.

Mit VBA kann man auch umfangreiche Formulare und Dialoge erstellen, mit denen man Benutzerabfragen vollziehen kann. Das folgende Bild zeigt ein solches Formular in der Entwurfsansicht im VBA-Editor.

Screenshot Entwurfsansicht eines Beispielformulars
VBA Beispiel-Formular in der Entwurfsansicht

Hier soll kurz erklärt werden, wie man beim Klick auf einen Button VBA-Code hinzufügen und ausführen kann. Typische Anwendungsbeispiele können das Schließen des Formulars, Speichern von Daten oder Erstellen eines Ordners sein.
Aus anderen Programmierumgebungen ist vielleicht ein Event-Explorer geläufig, in welchem man sich einfach das passende Ereignis aussucht und dort die Methode einträgt oder automatisch generieren lässt. Einen solchen Event-Explorer gibt es bei VBA nicht. Vielmehr scheint man sich nur auf ein Ereignis, das OnClick()-Event zu beschränken.

Bestseller Nr. 1

Button-Click Event in VBA erzeugen

Dieses ist dann auch relativ simpel zu erzeugen. In der Entwurfsansicht macht man einfach einen Doppelklick auf den gewünschten Button. Man gelangt dann automatisch in die Code-Ansicht zum Formular. Dort wurde automatisch eine noch leere Sub-Methode erzeugt, in welcher man weiteren Code hinzufügen kann, der beim Klick auf den Button ausgeführt werden soll.

(Die Code-Ansicht kann man übrigens auch mit der Taste F7 aufrufen oder über das Menü “Ansicht => Code“)

Screenshot Entwurfsansicht und Code-Ansicht mit Doppelklick auf Button zum Erzeugen einer Private Sub Methode
Doppelklick auf Button in der Entwurfsansicht erzeugt Click-Event

In unserem Beispiel wurde der Okay-Button gewählt zum Erzeugen des Codes. Dieser hat im Eigenschaften-Explorer den Namen “btnOkay” vergeben bekommen. Für das OnClick-Ereignis setzt die Entwicklungsumgebung also nur “_Click()” als Suffix hinten ran. So erkennt man auch immer zu welchem Button das jeweilige Ereignis gehört.

Screenshot VBA Eigenschaften Explorer
konfigurierbarer Name des Buttons im Eigenschaften Explorer

Solche Events können für jedes beliebige Element eines Formulars erzeugt werden durch einen einfachen Doppelklick auf das Element. In den meisten Fällen wird dann das Click-Event generiert. Aber der Editor entscheidet selbst, was für eine Ereignisroutine erzeugt wird. So wird zum Beispiel bei Doppelklick auf eine TextBox das Ereignis “TextBox_Change()” eingerichtet. Dieses reagiert also auf jede Änderung der TextBox oder anders gesagt, reagiert auf jede Texteingabe.

Bestseller Nr. 1
Bestseller Nr. 2

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert