So verwenden Sie MsgBox & InputBox in VBA für eine bessere Interaktion

Dim response As Integer
response = MsgBox(“Are you sure you want to continue?”, vbYesNo + vbQuestion, “Confirm”)

If response = vbYes Then
    MsgBox “You chose Yes!”, vbInformation, “Result”
Else
    MsgBox “You chose No!”, vbExclamation, “Result”
End If

Kennenlernen des Eingabefelds in VBA

Input Box (InputBox) ist eine Funktion in VBA (Visual Basic for Applications) die es Benutzern ermöglicht, Daten in Form von Text oder Zahlen über ein einfaches Dialogfenster einzugeben. InputBox wird häufig verwendet, um Informationen von Benutzern anzufordern, z. B. Namen, Nummern, Datumsangaben oder andere Daten, die für die VBA-Verarbeitung erforderlich sind.

Grundlegende Syntax von InputBox

Die grundlegende Syntax für die Anzeige von InputBox in VBA lautet wie folgt:

Dim userName As String
userName =InputBox(“Enter your name:”, “Input Data”)
MsgBox “Hello, “ &   userName  &  “!”

Erklärung des Codes:

  1. InputBox zeigt einen Dialog mit dem Text “Enter your name:” an.
  2. Die Daten, die der Benutzer eingibt, werden in der Variablen userName gespeichert.
  3. MsgBox zeigt die Begrüßung “Hallo, [Name eingegeben]!” an. nachdem der Benutzer auf OK geklickt hat.

Festlegen des Standardwerts in der InputBox

Sie können den Standardwert in InputBox festlegen, um ein Beispiel für die erwartete Eingabe bereitzustellen.

Beispielcode mit Standardwerten:

Dim city As String
city =InputBox(“Enter your city name:”“,  “Input Data”, “Jakarta”)
MsgBox “You live in “ &   city  &  “!”

Erklärung:

  • “Jakarta” wird als Standardtext im InputBox angezeigt.
  • Benutzer können den Standardwert bearbeiten oder direkt OK drücken, um den Standardwert zu verwenden.

Eingabevalidierung über die InputBox, um sicherzustellen, dass die Eingabedaten korrekt sind

Da InputBox nur Eingaben in Form von Text erhält, ist es wichtig zu überprüfen, ob die eingegebenen Daten den Erwartungen entsprechen.

Beispiel für die Validierung von Eingaben, damit sie nicht leer sind:

Dim userInput As String
userInput = InputBox(“Enter your email:”, “Input Email”)

If userInput = ““ Then
            MsgBox “Input cannot be empty!”, vbExclamation, “Warning”
Else
            MsgBox “The email you entered: “ & userInput, vbInformation, “Confirmation”
End If

Erklärung:

  • Wenn der Benutzer auf OK drückt, ohne die Daten einzugeben, wird eine Warnung angezeigt.
  • Liegt eine gültige Eingabe vor, erscheint eine Bestätigung mit den eingegebenen Daten.

Ein Beispiel für die Eingabevalidierung akzeptiert nur Zahlen:

Dim age As String
age = InputBox(“Enter your age:”, “Input Age”)

If IsNumeric(age) Then
            MsgBox “Your age is “ & age & “ years.”, vbInformation, “Confirm”
Else
            MsgBox “Please enter a valid number!”, vbCritical, “Error”
End If

Erklärung:

  • IsNumeric() wird verwendet, um zu überprüfen, ob es sich bei der Eingabe um eine Zahl handelt.
  • Wenn es sich nicht um eine Zahl handelt, wird eine Fehlerwarnung angezeigt.

Neueste Artikel