Hoe te werken met bericht- en invoervakken in PowerPoint VBA?

Hoe te werken met bericht- en invoervakken in PowerPoint VBA?

Bij het doornemen van de opmerkingen heb ik een aantal lezersvragen gezien over het werken met Visual Basic-invoer- en berichtvakken in PowerPoint.

In deze zelfstudie bieden we een zeer elementaire basiskennis om u te helpen deze mogelijkheden te gebruiken bij het automatiseren van het maken van uw presentatie.

Het tabblad Ontwikkelaars instellen

Allereerst moeten we de ontwikkelaarsomgeving voor PowerPoint inschakelen. Volg deze zelfstudie om uw ontwikkelingstabblad in te stellen.

Ga in PowerPoint naar het menu Ontwikkelaars en klik op Visual Basic.

Klik in de projectstructuur met de rechtermuisknop op uw presentatie, klik op Invoegen en kies vervolgens Module. Er wordt een nieuwe VBA-module gemaakt, dat is de plaats waar u uw code gaat schrijven.

Berichtenboxen in PowerPoint

Berichtenvensters spreken voor zich, hun doel is om wat nuttige informatie aan de eindgebruiker weer te geven. Schrijf de volgende code in je module:

Sub simplemessagebox()
MsgBox ("This is a simple message box")
End Sub

Druk op F5 of Uitvoeren en zie het resultaat:

Hoe te werken met bericht- en invoervakken in PowerPoint VBA?

Voorbeeld bericht en invoervak

In tegenstelling tot Berichtenboxen worden invoervakken gebruikt om feedback van de gebruiker te krijgen. Laten we naar het onderstaande voorbeeld kijken. Het script voegt automatisch nieuwe dia's in de presentatie in.

Dit is wat we zullen implementeren:

  1. We vragen de gebruiker eerst om het aantal dia's dat moet worden toegevoegd (met behulp van een invoervak).
  2. We zullen de gebruiker dan informeren over het aantal te maken dia's (met behulp van een berichtenvenster)
  3. Last, zal doorgaan en de dia's programmatisch maken.
  4. Als laatste slaan we de gewijzigde presentatie op


Sub CreateSlidesMessage()

Dim NumSlides As Integer
Dim MsgResult As VbMsgBoxResult

' How many slides to create
NumSlides = InputBox("Enter number of slides to create", "Create Slides")

'User confirmation
MsgResult = MsgBox("Powerpoint will create " & NumSlides & " slides. Proceed?", vbApplicationModal, "Create Slides")

'create the slides
If MsgResult = vbOK Then
    For i = 1 To NumSlides
        Set NewSlide = ActivePresentation.Slides.Add(Index:=i + 1, Layout:=ppLayoutBlank)
    Next i
    'Save the Presentation
    ActivePresentation.SaveAs("Your Presentation.pptx")
    MsgBox ("Presentation Saved.")
End If

End Sub

Hopelijk heeft dat geholpen, voel je vrij om commentaar te geven als dat nodig is.

Controleer de waarden die zijn geretourneerd door de functie MsgBox

Wanneer het dialoogvenster MsgBox verschijnt voor gebruikersinteractie, wilt u weten op welke optie de gebruiker heeft geklikt. U kunt de volgende code gebruiken om dat te controleren:

De code controleert welke knop de gebruiker kiest op MsgBox

Afhankelijk van de keuze van elke gebruiker kunt u verschillende codes blijven gebruiken. Deze VBA-codes kunt u leren in VBA-cursussen met toonaangevende experts op Leer Excel online.

Ondersteunt MsgBox Vietnamees met accenten? Het antwoord is nee, waarom? Omdat Microsoft het zo heeft geprogrammeerd. Maar is er een andere manier? Het antwoord is ja. U kunt het artikel Vietnamees met accent gebruiken met MsgBox VBA lezen

Alle code in het artikel kun je zien bij Gist:

  Sub HeoBasicMessageBox()
  MsgBox "Xin chao cac ban da den voi Hoc Excel Online"
  Einde sub
   
  Sub HeoBasicMessageBoxWithTitle()
  MsgBox "Xin chao cac ban da voi Hoc Excel Online", , "HEO"
  Einde sub
   
  Sub HeoBasicMessageBox2()
  MsgBox "Hoc Excel Online", _
  vbOKAnnuleren + _
  vbKritisch + _
  vbDefaultKnop1 + _
  vbApplicatieModaal
  Einde sub
   
  Sub HeoBasicMessageBox3()
  MsgBox "Hoc Excel Online", _
  vbOKAnnuleren + _
  vbKritisch + _
  vbDefaultKnop1 + _
  vbSysteemModaal
  Einde sub
   
  Sub HeoMsgBoxResult1()
  Dim-reactie als VbMsgBoxResult
   
  response = MsgBox("Hoc Excel Online", vbJaNee + vbCritical)
  MsgBox-antwoord
  Einde sub
   
  Sub HeoMsgBoxResult2()
  Dim-reactie als VbMsgBoxResult
   
  response = MsgBox("Hoc Excel Online", vbJaNee + vbVraag)
  MsgBox-antwoord
  Einde sub
   
  Sub HeoMsgBoxResult3()
  Dim-reactie als VbMsgBoxResult
   
  response = MsgBox("Hoc Excel Online", vbJaNee + vbExclamation)
  MsgBox-antwoord
   
  Einde sub
   
  Sub HeoMsgBoxResult4()
  Dim-reactie als VbMsgBoxResult
   
  response = MsgBox("Hoc Excel Online", vbJaNee + vbInformatie)
  MsgBox-antwoord
  Einde sub
   
  Sub HeoMsgBoxResult5()
  Dim-reactie als VbMsgBoxResult
  response = MsgBox("Fout", vbAbortRetryIgnore + vbDefaultButton1 + vbMsgBoxHelpButton)
  MsgBox-antwoord
  Einde sub
   
  Sub HeoMsgBoxResult6()
  Dim-reactie als VbMsgBoxResult
  response = MsgBox("Fout", vbAbortRetryIgnore + vbDefaultButton2 + vbMsgBoxHelpButton)
  MsgBox-antwoord
  Einde sub
   
  Sub HeoMsgBoxResult7()
  Dim-reactie als VbMsgBoxResult
  response = MsgBox("Fout", vbAbortRetryIgnore + vbDefaultButton3 + vbMsgBoxHelpButton)
  MsgBox-antwoord
  Einde sub
   
  Sub HeoMsgBoxResult8()
  Dim-reactie als VbMsgBoxResult
  response = MsgBox("Fout", vbAbortRetryIgnore + vbDefaultButton4 + vbMsgBoxHelpButton)
  MsgBox-antwoord
  Einde sub
   
  Sub HeoMsgBoxResult9()
  Dim-reactie als VbMsgBoxResult
  response = MsgBox("Wil je het opnieuw proberen?", vbRetryCancel + vbQuestion, "Fout")
  MsgBox-antwoord
  Einde sub
   
  Sub HeoMsgBoxResult10()
  MsgBox "Kritieke fout opgetreden", vbCritical, "Systeemfout"
  Einde sub

6 coole zoekmachines om naar gezichten te zoeken

6 coole zoekmachines om naar gezichten te zoeken

Soms wilt u misschien uw gezicht of dat van iemand anders op internet zoeken. Hier is een blik op zes zoekdiensten voor omgekeerde afbeeldingen die resultaten kunnen opleveren.

Werkt de Facebook Messenger-camera niet? Hier is een oplossing

Werkt de Facebook Messenger-camera niet? Hier is een oplossing

Als de Facebook Messenger-camera niet werkt, controleer dan de Messenger-status, installeer de app opnieuw of draai terug met een APK.

Hoe Gmail toe te voegen aan de taakbalk op Windows (SNELLE GIDS)

Hoe Gmail toe te voegen aan de taakbalk op Windows (SNELLE GIDS)

Ontdek hoe je Gmail kunt toevoegen aan de taakbalk op Windows 10 of Windows 11 met Chrome of Microsoft Edge. Volg onze eenvoudige gids.

Telefoon blijft continu rinkelen? Controleer deze oplossingen

Telefoon blijft continu rinkelen? Controleer deze oplossingen

Als uw telefoon continu blijft rinkelen, start u uw apparaat opnieuw op, controleert u de nabijheidssensor, reset u de app-voorkeuren of voert u de fabrieksinstellingen terug.

Speciale tekens typen op Windows 11

Speciale tekens typen op Windows 11

Leer hoe u speciale tekens kunt typen op Windows 11. Volg deze gids voor handige technieken om wiskundige symbolen, emoji

6 manieren om schijfbeheer te openen op Windows 11

6 manieren om schijfbeheer te openen op Windows 11

Ontdek 6 efficiënte manieren om Schijfbeheer te openen in Windows 11 voor het partitioneren van schijven en het wijzigen van stationsletters.

Websites vastzetten op de Windows-taakbalk vanuit Microsoft Edge

Websites vastzetten op de Windows-taakbalk vanuit Microsoft Edge

Leer hoe u websites kunt vastzetten op de Windows-taakbalk vanuit Microsoft Edge voor snelle toegang met één klik.

Snapchat Berichten bijwerken (Quick Fix)

Snapchat Berichten bijwerken (Quick Fix)

Als je de Snapchat-melding voor het bijwerken van berichten op je Android ontvangt, navigeer dan naar Instellingen> Apps> Snapchat> Meldingen en schakel deze uit.

Kun je geen screenshot maken vanwege het beveiligingsbeleid? Dit is waarom

Kun je geen screenshot maken vanwege het beveiligingsbeleid? Dit is waarom

Ontdek hoe je kunt omzeilen dat je geen screenshot kunt maken vanwege het beveiligingsbeleid in apps, en leer handige tips voor het maken van screenshots op Android en iOS.

8 oplossingen voor COD Modern Warfare gesplitst scherm werkt niet

8 oplossingen voor COD Modern Warfare gesplitst scherm werkt niet

Lees onze gids om oplossingen te vinden voor het probleem dat COD Modern Warfare gesplitst scherm niet werkt in multiplayer. Volg de gegeven oplossingen en verbeter uw spelervaring.