MsgBox, functie
Van toepassing op
In een Access-bureaubladdatabase geeft de functie MsgBox een bericht weer in een dialoogvenster, wacht tot de gebruiker op een knop klikt en retourneert een geheel getal dat aangeeft op welke knop de gebruiker heeft geklikt.
Syntaxis
MsgBox(prompt [, buttons ] [, title ] [, helpfile ] [, context ] )
De syntaxis van de functie MsgBox bevat deze argumenten:
| Argument | Beschrijving |
|---|---|
| tekst | Vereist. Een tekenreeksexpressie die als het bericht wordt weergegeven in het dialoogvenster. De maximale lengte van de prompt is ongeveer 1024 tekens, afhankelijk van de breedte van de gebruikte tekens. Als de prompt uit meer dan één regel bestaat, kunt u de regels scheiden met behulp van een teken voor regelterugloop (Chr(13)), een regelinvoerteken (Chr(10)) of een regelinvoertekencombinatie (Chr(13) & Chr(10)) tussen elke regel. |
| knoppen | Optioneel. numerieke expressie die de som van waarden is die het aantal en het type knoppen opgeeft dat moet worden weergegeven, de pictogramstijl die moet worden gebruikt, de identiteit van de standaardknop en de modaliteit van het berichtvak. Als u dit weglaat, is de standaardwaarde voor knoppen 0. |
| titel | Optioneel. Een tekenreeksexpressie die wordt weergegeven op de titelbalk van het dialoogvenster. Als u de titel weglaat, wordt de naam van de toepassing in de titelbalk geplaatst. |
| helpbestand | Optioneel. Een tekenreeksexpressie die verwijst naar het Help-bestand met contextafhankelijke Help-informatie voor het dialoogvenster. Als er een helpbestand wordt opgegeven, moet er ook context worden opgegeven. |
| Context | Optioneel. Een numerieke expressie die verwijst naar het nummer voor Help-context dat door de schrijver van de Help-informatie is toegewezen aan het betreffende Help-onderwerp. Als er context wordt opgegeven, moet ook het helpbestand worden opgegeven. |
Instellingen
De instellingen voor het argument knoppenzijn:
| Constante | Waarde | Beschrijving |
|---|---|---|
| vbOKOnly | 0 | Alleen de knop OK weergeven. |
| vbOKCancel | 1 | De knoppen OK en Annuleren weergeven. |
| vbAbortRetryIgnore | 2 | De knoppen Afbreken, Opnieuw en Negeren weergeven. |
| vbYesNoCancel | 3 | De knoppen Ja, Nee en Annuleren weergeven. |
| vbYesNo | 4 | De knoppen Ja en Nee weergeven. |
| vbRetryCancel | 5 | De knoppen Opnieuw en Annuleren weergeven. |
| vbCritical | 16 | Het pictogram Kritiek bericht weergeven. |
| vbQuestion | 32 | Pictogram Waarschuwingsquery weergeven. |
| vbExclamation | 48 | Pictogram Waarschuwingsbericht weergeven. |
| vbInformation | 64 | Het pictogram Informatiebericht weergeven. |
| vbDefaultButton1 | 0 | De eerste knop is de standaardknop. |
| vbDefaultButton2 | 256 | De tweede knop is de standaardknop. |
| vbDefaultButton3 | 512 | De derde knop is de standaardknop. |
| vbDefaultButton4 | 768 | De vierde knop is de standaardknop. |
| vbApplicationModal | 0 | De toepassing is modaal; de gebruiker moet reageren op het bericht voordat hij of zij verder kan werken in de huidige toepassing. |
| vbSystemModal | 4096 | Het systeem is modaal; alle toepassingen worden onderbroken totdat de gebruiker op het bericht reageert. |
| vbMsgBoxHelpButton | 16384 | Er wordt een Help-knop toegevoegd aan het bericht. |
| VbMsgBoxSetForeground | 65536 | Hiermee geeft u op dat het berichtvenster op de voorgrond moet worden weergegeven. |
| vbMsgBoxRight | 524288 | Tekst wordt rechts uitgelijnd. |
| vbMsgBoxRtlReading | 1048576 | Hiermee geeft u op dat tekst van rechts-naar-links moet worden weergegeven op computers met de landinstelling Hebreeuws of Arabisch. |
De eerste groep met waarden (0-5) beschrijft het aantal en het type van de knoppen die worden weergegeven in het dialoogvenster; de tweede groep (16, 32, 48, 64) verwijst naar de pictogramstijl; de derde groep (0, 256, 512) bepaalt welke knop de standaardknop is; en de vierde groep (0, 4096) bepaalt de modaliteit van het berichtvak. Wanneer u getallen toevoegt om een definitieve waarde voor het argument knoppen te maken, gebruikt u slechts één getal uit elke groep.
Opmerking
Deze constanten worden opgegeven door Visual Basic for Applications. Hierdoor kunnen de namen overal in de code worden gebruikt in plaats van de werkelijke waarden.
Retourwaarden
| Constante | Waarde | Beschrijving |
|---|---|---|
| vbOK | 1 | OK |
| vbCancel | 2 | Annuleren |
| vbAbort | 3 | Afbreken |
| vbRetry | 4 | Opnieuw |
| vbIgnore | 5 | Negeren |
| vbYes | 6 | Ja |
| vbNo | 7 | Nee |
Opmerkingen
Wanneer zowel helpfile als context zijn opgegeven, kan de gebruiker op F1 (Windows) of HELP (macOS) drukken om het Help-onderwerp weer te geven dat overeenkomt met de context. Sommige hosttoepassingen, bijvoorbeeld Microsoft Excel, voegen ook automatisch een Help-knop toe aan het dialoogvenster.
Als in het dialoogvenster een knop Annuleren wordt weergegeven, heeft het indrukken van de Esc-toets hetzelfde effect als het klikken op Annuleren. Als het dialoogvenster een Help-knop bevat, is er contextafhankelijke Help-informatie beschikbaar voor het dialoogvenster. Er wordt echter pas een waarde geretourneerd op het moment dat op een van de andere knoppen wordt geklikt.
Opmerking
Als u meer wilt opgeven dan het eerste benoemde argument, moet u MsgBox gebruiken in een expressie. Als u op bepaalde plekken argumenten wilt weglaten, moet u daar wel een komma als scheidingsteken typen.
Voorbeeld
Opmerking
In de volgende voorbeelden wordt het gebruik van deze functie in een VBA-module (Visual Basic for Applications) toegelicht.
In dit voorbeeld wordt de functie MsgBox gebruikt om een bericht over een kritieke fout weer te geven in een dialoogvenster met de knoppen Ja en Nee. De knop Nee wordt ingesteld als het standaardantwoord. De waarde die wordt geretourneerd door MsgBox is afhankelijk van de knop die wordt gekozen door de gebruiker. In dit voorbeeld wordt ervan uitgegaan dat DEMO.HLP het een Help-bestand is dat een onderwerp bevat met een Help-contextnummer dat gelijk is aan 1000.
Dim Msg, Style, Title, Help, Ctxt, Response, MyString
Msg = "Do you want to continue?"
Style = vbYesNo + vbCritical + vbDefaultButton2
Title = "MsgBox Demonstration"
Help = "DEMO.HLP"
Ctxt = 1000
Response = MsgBox(Msg, Style, Title, Help, Ctxt)
If Response = vbYes Then ' User chose Yes.
MyString = "Yes" ' Perform some action.
Else ' User chose No.
MyString = "No" ' Perform some action.
End If