Met behulp van de onderstaande instructie kan een voortgangsindicator - over de gehele presentatie heen - worden ingevoegd:
- Kopieer de onderstaande code;
- Ga naar PowerPoint en open de gewenste presentatie;
- Druk op [ALT] + [F11] om naar de Visual Basic Editor te gaan;
- Ga in de menubalk naar [Invoegen] en druk op [Module];
- Druk op [CTRL] + [V] om de code te plakken;
- Druk weer op [ALT] + [F11] om terug te keren;
- Activeer het tabblad [Beeld] en druk in de groep [Macro’s] op de knop [Macro’s];
- Selecteer de macro ‘maakVoortgangsindicator’ en druk op de knop [Uitvoeren].
Tip: kies voor de macro 'verwijderVoortgangsindicator' om de voortgangsindicator weer te verwijderen.
'----------------------------------------------------------------------------------------------------------------------- ' Auteur : pascalterheege.nl ' Datum : 1-1-2016 ' Object : Module1 ' Doel : voortgangsindicator plaatsen en verwijderen in PowerPoint presentatie ' Verwijzing : ' Bron : https://gist.github.com/PiiXiieeS/7181980 '----------------------------------------------------------------------------------------------------------------------- Option Explicit 'module variabelen declaren Dim lngDia As Long 'huidige dia Dim lngAantal As Long 'totaal aantal dia's '----------------------------------------------------------------------------------------------------------------------- ' Datum : 1-1-2016 ' Type : Subroutine ' Opmerking : voortgangsindicator plaatsen in alle dia's (1e dia optioneel) '----------------------------------------------------------------------------------------------------------------------- Sub maakVoortgangsindicator() ' Variabelen declareren Dim intLinks As Integer 'positie Dim intHoogte As Integer Dim intBoven As Integer Dim shpRechthoek As Shape 'vorm voortgangsindicator = rechthoek Dim intDia1 As VbMsgBoxResult '1e dia optioneel ' Variabelen initialiseren intLinks = 0 intHoogte = 12 intBoven = ActivePresentation.PageSetup.SlideHeight - intHoogte intDia1 = MsgBox("Inclusief 1e dia?", vbInformation + vbYesNo, "Voortgangsindicator") lngAantal = ActivePresentation.Slides.Count ' Indien exclusief 1e dia minus 1 op totaal aantal dia's If intDia1 = vbNo Then lngAantal = lngAantal - 1 ' Itereren door alle dia's For lngDia = 1 To lngAantal ' Rechthoek gepositioneerd plaatsen If intDia1 = vbNo Then ' 1e dia overslaan = + 1 Set shpRechthoek = ActivePresentation.Slides(lngDia + 1). _ Shapes.AddShape(msoShapeRectangle, intLinks, intBoven, _ lngDia * ActivePresentation.PageSetup.SlideWidth / lngAantal, intHoogte) Else ' inclusief 1e dia Set shpRechthoek = ActivePresentation.Slides(lngDia). _ Shapes.AddShape(msoShapeRectangle, intLinks, intBoven, _ lngDia * ActivePresentation.PageSetup.SlideWidth / lngAantal, intHoogte) End If ' Rechthoek kleur en naam geven With shpRechthoek .Fill.ForeColor.RGB = RGB(112, 146, 191) .Name = "Voortgangsindicator" End With Next lngDia End Sub '----------------------------------------------------------------------------------------------------------------------- ' Datum : 1-1-2016 ' Type : Subroutine ' Opmerking : voortgangsindicator verwijderen uit alle dia's '----------------------------------------------------------------------------------------------------------------------- Sub verwijderVoortgangsindicator() On Error Resume Next lngAantal = ActivePresentation.Slides.Count ' Itereren door alle dia's For lngDia = 1 To lngAantal ActivePresentation.Slides(lngDia).Shapes("Voortgangsindicator").Delete Next lngDia End Sub