Barra de progreso en Powerpoint

Recientemente he tenido que realizar una presentación en Powerpoint de cerca de un centenar de diapositivas en la que tenía que ajustarme a un periodo de tiempo muy concreto. Para facilitarme la tarea me pregunté si existía alguna forma de incluir algún tipo de barra de progreso que me ayudase a determinar de un vistazo rápido si me estaba ajustando al tiempo previsto.

Buscando en Internet encontré un artículo en el que se propone una macro para tal fin. Como mi intención era que pasase lo más desapercibida posible realicé algunas pequeñas modificaciones para poder ajustar rápidamente la altura de la barra de progreso y si se desea imprimir con borde o no.

Partiendo de la presentación en Powerpoint ya terminada, procederemos a guardarla de nuevo, pero esta vez con formato "Presentación de Powerpoint habilitada para macros (.pptm)". A continuación habilitaremos la pestaña de "programador" haciendo clic en el botón de Office (botón superior izquierdo de Powerpoint) y después en el botón "Opciones de Powerpoint". Habilitaremos la opción "Mostrar ficha programador en la cinta de opciones" y aceptaremos los cambios.

Seleccionaremos a continuación la pestaña "Programador" en la cinta de opciones y haremos clic en el botón "Macros". Escribimos un nombre cualquiera para la macro y pulsamos el botón "Crear". Nos aparecerá entonces el editor de macros de Office con un esqueleto de función, cuyo nombre coincide con el dado en la ventana anterior. Basta con introducir el siguiente código entre las dos líneas ya existentes:

    Height = 5 ' cambiar para modificar la altura de la barra de progreso
    Borde = msoFalse ' cambiar a msoTrue para dibujar un borde en la barra de progreso
    On Error Resume Next
        With ActivePresentation
              For X = 1 To .Slides.Count
              .Slides(X).Shapes("PB").Delete
              Set s = .Slides(X).Shapes.AddShape(msoShapeRectangle, _
                0, .PageSetup.SlideHeight - Height, _
                X * .PageSetup.SlideWidth / .Slides.Count, Height)
              s.Fill.ForeColor.RGB = RGB(127, 0, 0)
              s.Line.Visible = Borde
              s.Name = "PB"
              Next X:
        End With

Guardamos la macro y, de nuevo en la ventana de macros de Powerpoint, seleccionamos la macro creada y hacemos clic en "Ejecutar". La macro habrá creado en ese momento varias formas rectangulares en el borde inferior de las diapositivas que representan la barra de progreso.

Dejo en este enlace un ejemplo de presentación con la macro ya creada.