Laatste update: juli 2020; Toepasbaarheid: Office 365,2019, 2016, 2013.
Soms willen we onze Word-documenten interactiever maken en zelfs gebruikersinvoer vastleggen. Voer bericht- en invoervakken in.
Zoals de naam al doet vermoeden, is een berichtvenster een stukje informatie dat wordt weergegeven aan de documentgebruikers. Invoervakken zijn essentieel om informatie van de gebruiker vast te leggen.
Dit bericht bevat alle informatie en codevoorbeelden die u nodig hebt om volledig functionele documenten te maken met Visual Basic for Applications (VBA) -berichten en invoervakken voor Microsoft Word.
Hoe VBA-code toevoegen aan Word?
Voordat we verder gaan en uitleggen hoe u bericht- en invoervakken kunt toevoegen, volgt hier een korte opfriscursus over hoe u uw aangepaste VBA-code aan een Word-document kunt toevoegen.
- Ga eerst door en schakel het tabblad Ontwikkelaar in.
- Druk nu op de Visual Basic - knop op het tabblad Ontwikkelaars . Hiermee wordt de Visual Basic-editor geopend.

- Markeer uw document.
- Klik op Invoegen en selecteer vervolgens Module .

- Kopieer de code die we hieronder verstrekken in de module die u zojuist hebt gemaakt in uw module.
- Klik op Opslaan. Geef een naam aan uw document als daarom wordt gevraagd.
- Sluit de Visual Basic-editor.
Berichtenboxen VBA-code
Syntaxis:
MsgBox(prompt,knoppen,titel,helpbestand,context)
Syntaxis uitleg:
Snel:
Vereist. Het is de informatie die aan de gebruiker kan worden gegeven. Het moet tussen het dubbele aanhalingsteken worden ingevoegd .
Toetsen:
Optioneel. Knoppen zijn dat soort knoppen die aan de gebruikersinformatie worden gegeven. Er zijn verschillende knoppen beschikbaar voor MsgBox() en deze zijn te vinden op de onderstaande afbeeldingen.



Titel:
Optioneel. Het is de titel voor de informatie die aan de gebruiker wordt gegeven. Indien niet opgegeven, is Microsoft Word de standaardtitel.
Helpbestand en context:
- Optioneel. Helpbestand identificeert het Help-bestand dat beschikbaar is op de lokale schijf en dat als hulp in een dialoogvenster kan worden geleverd
- Optioneel. Context is een numerieke uitdrukking die wordt gebruikt om het helponderwerp te identificeren aan de hand van het unieke nummer.
Voorbeeld Berichtenvakcode:
'VBA
Sub messagebox()
'Variables assigned
Dim buttonclick As VbMsgBoxResult
'Message box to display information to user
MsgBox "Hi, Visual Basic is easy to work with", vbExclamation, "VBA"
'Message box to ask question to user with yes or no question
buttonclick = MsgBox("Do you like VBA?", vbQuestion + vbYesNo, "VBA")
If buttonclick = vbYes Then
MsgBox "Yes, they are great!", vbExclamation, "VBA"
Else
MsgBox "Why not? They are great!", vbCritical, "VBA"
End If
End Sub
Uitgang:




Dialoogvenster en invoervakken VBA-code
Invoervenster is een eenvoudig dialoogvenster waarmee we de gebruiker om wat informatie kunnen vragen. Laten we aan de hand van een voorbeeld kennis maken met de VBA-code.
Syntaxis:
InputBox (Prompt, Titel, Standaard, XPos, YPos, HelpFile, HelpContextId, Type)
Syntaxis uitleg:
Snel:
Vereist. Het is de informatie die aan de gebruiker kan worden gegeven. Het moet tussen het dubbele aanhalingsteken worden ingevoegd .
Titel:
Optioneel. Het is de titel voor de informatie die aan de gebruiker wordt gegeven. Indien niet opgegeven, is Microsoft Word de standaardtitel.
Standaard:
Optioneel. Het geeft de standaardwaarde weer in het tekstvak, voordat de gebruiker een waarde typt. Als dit niet is opgegeven, is het tekstvak leeg.
XPo's:
Optioneel. Het wordt gebruikt als de positie op de X-as. Van links naar rechts
YPo's:
Optioneel. Het wordt gebruikt als de positie op de Y-as. Van boven naar beneden
Helpbestand en HelpContext-ID:
- Optioneel. Helpbestand identificeert het Help-bestand dat beschikbaar is op de lokale schijf en dat als hulp in een dialoogvenster kan worden geleverd
- Optioneel. HelpContext ID is het id-nummer voor het helpbestand.
Invoervakcode:
'VBA
Sub macro()
'Variables assigned
Dim a As Long
Dim b As Long
'Input box to get value from user
a = InputBox("Enter a value for a", "Question 1")
b = InputBox("Enter a value for b", "Question 2")
'Answer displayed in a message box
MsgBox ("Answer is " & Val(a) + Val(b))
End Sub
Uitgang:


