VBA - Meldungsfeld

Das MsgBox function Zeigt ein Meldungsfeld an und wartet darauf, dass der Benutzer auf eine Schaltfläche klickt. Anschließend wird eine Aktion basierend auf der vom Benutzer angeklickten Schaltfläche ausgeführt.

Syntax

MsgBox(prompt[,buttons][,title][,helpfile,context])

Parameterbeschreibung

  • Prompt- Ein erforderlicher Parameter. Eine Zeichenfolge, die im Dialogfeld als Nachricht angezeigt wird. Die maximale Länge der Eingabeaufforderung beträgt ca. 1024 Zeichen. Wenn sich die Nachricht auf mehr als eine Zeile erstreckt, können die Zeilen mit einem Wagenrücklaufzeichen (Chr (13)) oder einem Zeilenvorschubzeichen (Chr (10)) zwischen den einzelnen Zeilen getrennt werden.

  • Buttons- Ein optionaler Parameter. Ein numerischer Ausdruck, der den Typ der anzuzeigenden Schaltflächen, den zu verwendenden Symbolstil, die Identität der Standardschaltfläche und die Modalität des Meldungsfelds angibt. Wenn Sie dieses Feld leer lassen, ist der Standardwert für Schaltflächen 0.

  • Title- Ein optionaler Parameter. Ein Zeichenfolgenausdruck, der in der Titelleiste des Dialogfelds angezeigt wird. Wenn der Titel leer gelassen wird, wird der Anwendungsname in die Titelleiste eingefügt.

  • Helpfile- Ein optionaler Parameter. Ein Zeichenfolgenausdruck, der die Hilfedatei angibt, die zum Bereitstellen der kontextsensitiven Hilfe für das Dialogfeld verwendet werden soll.

  • Context- Ein optionaler Parameter. Ein numerischer Ausdruck, der die Hilfekontextnummer angibt, die der Hilfeautor dem entsprechenden Hilfethema zugewiesen hat. Wenn ein Kontext bereitgestellt wird, muss auch eine Hilfedatei bereitgestellt werden.

Das Buttons Der Parameter kann einen der folgenden Werte annehmen:

  • 0 vbOKOnly - Zeigt nur die Schaltfläche OK an.

  • 1 vbOKCancel - Zeigt die Schaltflächen OK und Abbrechen an.

  • 2 vbAbortRetryIgnore - Zeigt die Schaltflächen Abbrechen, Wiederholen und Ignorieren an.

  • 3 vbYesNoCancel - Zeigt die Schaltflächen Ja, Nein und Abbrechen an.

  • 4 vbYesNo - Zeigt die Schaltflächen Ja und Nein an.

  • 5 vbRetryCancel - Zeigt die Schaltflächen Wiederholen und Abbrechen an.

  • 16 vbCritical - Zeigt das Symbol für kritische Nachrichten an.

  • 32 vbQuestion - Zeigt das Symbol für die Warnabfrage an.

  • 48 vbExclamation - Zeigt das Warnmeldungssymbol an.

  • 64 vbInformation - Zeigt das Informationsnachrichtensymbol an.

  • 0 vbDefaultButton1 - Die erste Schaltfläche ist die Standardeinstellung.

  • 256 vbDefaultButton2 - Die zweite Schaltfläche ist die Standardeinstellung.

  • 512 vbDefaultButton3 - Die dritte Schaltfläche ist die Standardeinstellung.

  • 768 vbDefaultButton4 - Die vierte Schaltfläche ist die Standardeinstellung.

  • 0 vbApplicationModal Anwendungsmodal - Die aktuelle Anwendung funktioniert erst, wenn der Benutzer auf das Meldungsfeld reagiert.

  • 4096 vbSystemModal System modal - Alle Anwendungen funktionieren erst, wenn der Benutzer auf das Meldungsfeld reagiert.

Die obigen Werte sind logisch in vier Gruppen unterteilt: Die first group(0 bis 5) gibt die Schaltflächen an, die im Meldungsfeld angezeigt werden sollen. Dassecond group (16, 32, 48, 64) beschreibt den Stil des anzuzeigenden Symbols third group (0, 256, 512, 768) gibt an, welche Schaltfläche die Standardeinstellung sein muss, und die fourth group (0, 4096) bestimmt die Modalität des Meldungsfeldes.

Rückgabewerte

Die MsgBox-Funktion kann einen der folgenden Werte zurückgeben, mit denen die Schaltfläche identifiziert werden kann, auf die der Benutzer im Meldungsfeld geklickt hat.

  • 1 - vbOK - OK wurde angeklickt
  • 2 - vbCancel - Abbrechen wurde angeklickt
  • 3 - vbAbort - Abort wurde angeklickt
  • 4 - vbRetry - Wiederholen wurde angeklickt
  • 5 - vbIgnore - Ignorieren wurde angeklickt
  • 6 - vbYes - Ja wurde angeklickt
  • 7 - vbNo - Nein wurde angeklickt

Beispiel

Function MessageBox_Demo() 
   'Message Box with just prompt message 
   MsgBox("Welcome")     
   
   'Message Box with title, yes no and cancel Butttons  
   int a = MsgBox("Do you like blue color?",3,"Choose options") 
   ' Assume that you press No Button  
   msgbox ("The Value of a is " & a) 
End Function

Ausgabe

Step 1 - Die obige Funktion kann entweder durch Klicken auf die Schaltfläche "Ausführen" im VBA-Fenster oder durch Aufrufen der Funktion aus dem Excel-Arbeitsblatt ausgeführt werden, wie im folgenden Screenshot gezeigt.

Step 2 - Ein einfaches Nachrichtenfeld wird mit der Meldung "Willkommen" und der Schaltfläche "OK" angezeigt

Step 3 - Nach dem Klicken auf OK wird ein weiteres Dialogfeld mit einer Meldung mit den Schaltflächen "Ja, Nein und Abbrechen" angezeigt.

Step 4- Nach dem Klicken auf die Schaltfläche "Nein" wird der Wert dieser Schaltfläche (7) als Ganzzahl gespeichert und dem Benutzer als Meldungsfeld angezeigt, wie im folgenden Screenshot gezeigt. Anhand dieses Wertes kann verstanden werden, auf welche Schaltfläche der Benutzer geklickt hat.