Dialogfeld Builder

Der Message Box Builder generiert Code für Message Boxes und Input Boxes. Sie finden ihn im Menü UI des VBA-Editors:

messagebox builder location

Und in der Excel Multifunktionsleiste:

Nachrichten-Box

vba messagebox builder

MessageBoxen werden verwendet, um Benutzer aufzufordern. Die standardmäßige MessageBox (vbOKOnly) übermittelt Informationen und fordert den Benutzer einfach auf, auf „ok“ zu klicken.

msgbox "Vollständig"
vba code writer

Bei anderen MessageBox-Typen muss der Benutzer eine Auswahl treffen (z. B. OK / Abbrechen, Wiederholen / Abbrechen):

vba messagebox builder options

Der Vorschaubereich zeigt die aktuell konfigurierte MessageBox. Ändern Sie einfach die Optionen und sofort zeigt der Vorschaubereich die aktualisierte MessageBox und der Bereich „Generierter Code“ zeigt den generierten Code:

vba messagebox builder preview

Ein paar Dinge sind zu beachten:

Sie können eine Standardschaltfläche definieren, indem Sie auf die entsprechende Schaltfläche im Abschnitt „Schaltflächen und Standardschaltfläche“ klicken. Dies ist die Schaltfläche, die gedrückt wird, wenn der Benutzer auf Enter klickt, wenn die MessageBox angezeigt wird. In den beiden vorherigen Abbildungen wurde die Option „Nein“ als Standardschaltfläche ausgewählt.

Die MessageBox gibt einen Wert aus, der der Schaltfläche entspricht, auf die der Benutzer geklickt hat. Im Feld “ Generierter Code“ können Sie sehen, dass eine Select Case-Anweisung verwendet wird, um die verschiedenen Optionen zu behandeln:

vba messagebox builder generated code
Select Case Antwort
   Fall vbYes
   Fall vbNo
   Fall vbCancel
End Select

Die Prozedur sollte unterschiedliche Aktionen ausführen, je nachdem, ob Yes, No oder Cancel ausgewählt wird. Um dies zu erreichen, geben Sie die gewünschten Aktionen in die Select Case-Anweisung ein:

Select Case Antwort
    Case vbJa
        bereich("a1").wert = "ja"
    Case vbNein
        bereich("a1").wert = "nein"
    Case vbAbbrechen
        Goto EndMacro
    End Select

Hinweis: Die Definition von Aktionen ist bei einem OKOnly MessageBox-Typ nicht erforderlich, da nur eine Option verfügbar ist.

Input Box Builder

vba inputbox builder

InputBoxes fordern den Benutzer auf, einen Wert einzugeben. Dieser Wert wird einer Variablen zugewiesen:

Dim answer As Double
answer = Application.InputBox("Zinssatz", "Zinssatz eingeben", Typ:=1)
vba interest rate builder

Der InputBox-Teil des Builders funktioniert sehr ähnlich wie der MessageBox-Teil. Es gibt jedoch zwei Optionen, die wir hervorheben möchten.

Eingabe-Typ

vba messagebox builder input type

Der Eingabetyp teilt VBA mit, welche Art von Eingabe vom Benutzer zu erwarten ist. So kann VBA feststellen, ob der eingegebene Wert gültig ist.

Hinweis: Um Fehler zu vermeiden, muss Application.ScreenUpdating bei der Arbeit mit Input Type=Cell Reference auf True gesetzt werden: Application.ScreenUpdating = True

Standardwert Mit der Option Standardwert wird der Eingabebereich vorausgefüllt.

vba inputbox generator default value

Excel automatisieren starten