Die Funktionen MsgBox und InputBox halten den Code
an und warten darauf, dass der User eine Eingabe vornimmt. Die Eingabe kann dann
im Code weiterverwendet werden. In gewisser Weise handelt es sich um sehr einfache
Eingabeformulare.
MsgBox(Prompt As String, [Buttons As VbMsgBoxStyle = vbOKOnly], [Title As String], [HelpFile, Context]) As VbMsgBoxResult
| Microsoft Word |
|---|
| Im Direktfenster gibt es gleich eine Information |
Zeigt dem User eine Meldung an. Prompt wird dem User wie nebenstehend
angezeigt. Erst, wenn der User reagiert hat, wird der Code weiter ausgeführt.
Sub Nachricht() MsgBox "Im Direktfenster gibt es gleich eine Information" Debug.Print "Dies ist eine Information" End Sub
In Buttons können Konstanten
aus VbMsgBoxStyle
das Aussehen der Meldung definieren. Man kann...
Mehrere Konstanten können addiert werden. Die Konstanten sind hier in Gruppen gegliedert, natürlich kann man aus den ersten drei Gruppen immer nur eine Konstante verwenden.
Zeigt man mehrere Buttons an, erfährt man über den Rückgabewert der Funktion,
welchen der User ausgewählt hat. Dazu stellt VBA die Aufzählung
VbMsgBoxResult
zur Verfügung.
Mit Title kann eine Überschrift definiert werden. Fehlt
Title, wird der Name der Applikation angezeigt.
| VBA-Tutorial |
|---|
Wurden Ihnen gerade viele Informationen zugemutet? |
Sub Information() Dim Antwort As VbMsgBoxResult Dim Meldung As String Meldung = "Wurden Ihnen gerade viele Informationen zugemutet?" Antwort = MsgBox(Meldung, vbYesNo + vbQuestion, "VBA-Tutorial") If Antwort = vbYes Then MsgBox "Fangen Sie weiter vorn nochmal an" Else MsgBox "OK, dann können wir weitermachen" End If End Sub
Die Argumente HelpFile und Context benötigt man, wenn
man eine eigene Hilfedatei erstellt. Im Rahmen des VBA-Tutorials wird darauf nicht
näher eingegangen.
InputBox(Prompt As String, [Title As String], [Default As String], [XPos], [YPos], [HelpFile, Context]) As String
| Microsoft Word | |
|---|---|
| Geben Sie einen Text ein |
|
Zeigt dem User eine Eingabeaufforderung zur Eingabe von Text an, der anschließend
als String zur Verfügung steht. Prompt wird in der InputBox angezeigt.
Erst, wenn der User reagiert hat, wird der Code weiter ausgeführt.
Debug.Print InputBox("Geben Sie einen Text ein")
| Ihr Name? | |
|---|---|
| Wie heißen Sie? |
|
Mit Title kann man eine Überschrift definieren. Fehlt Title,
wird der Name der Applikation in der Titelleiste angezeigt. Mit Default
kann man einen Text angeben, der als Voreinstellung in der InputBox angezeigt wird.
Function Eingabe() As String Eingabe = InputBox("Wie heißen Sie?", "Ihr Name?", "Müller") End Function
Mit XPos und YPos kann, von oben Links beginnend,
die Position der Eingabeaufforderung vorgegeben werden. Ohne diese Argumente wird
sie ca. zentriert dargestellt.
Die Argumente HelpFile und Context benötigt man, wenn
man eine eigene Hilfedatei erstellt. Im Rahmen des VBA-Tutorials wird darauf nicht
näher eingegangen.