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

Gember 2.7.53.0

Gember 2.7.53.0

Ginger is een gratis spelling- en grammaticacontrole.

Blokken

Blokken

Blocks is een intellectueel spel voor leerlingen van de derde klas van de basisschool om hun detectie- en oogvaardigheden te oefenen en wordt door docenten opgenomen in het IT-onderwijsondersteuningsprogramma.

Prezi 6.26

Prezi 6.26

Prezi is een gratis applicatie waarmee u digitale presentaties kunt maken, zowel online als offline.

Mathway

Mathway

Mathway is een zeer nuttige app waarmee u al die wiskundige problemen kunt oplossen waarvoor een complexer hulpmiddel nodig is dan de ingebouwde rekenmachine van uw apparaat.

Adobe Presenter

Adobe Presenter

Adobe Presenter is e-Learning-software uitgegeven door Adobe Systems en beschikbaar op het Microsoft Windows-platform als een Microsoft PowerPoint-plug-in.

Toekan 2.3.0

Toekan 2.3.0

Toucan is een educatief technologieplatform. Hiermee kunt u een nieuwe taal leren terwijl u op gewone, alledaagse websites surft.

ENetViet 24.2

ENetViet 24.2

eNetViet is een applicatie die ouders helpt in contact te komen met de school waar hun kinderen studeren, zodat ze de huidige leersituatie van hun kind duidelijk kunnen begrijpen.

Duolingo

Duolingo

Duolingo - Leer gratis talen, of kortweg Duolingo, is een educatief programma waarmee je veel verschillende talen kunt leren en oefenen.

Snel typen

Snel typen

RapidTyping is een handige en gebruiksvriendelijke tool voor toetsenbordtraining waarmee u uw typsnelheid kunt verbeteren en spelfouten kunt verminderen. Met lessen georganiseerd voor veel verschillende niveaus, leert RapidTyping u hoe u kunt typen of bestaande vaardigheden kunt verbeteren.

MathType 7.4.10.53

MathType 7.4.10.53

MathType is interactieve vergelijkingssoftware van ontwikkelaar Design Science (Dessci), waarmee u wiskundige notaties kunt maken en annoteren voor tekstverwerking, presentaties, eLearning, enz. Deze editor wordt ook gebruikt voor het maken van TeX-, LaTeX- en MathML-documenten.