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.

 

 

Comentarios

Muchas gracias por tu aporte, es de mucha ayuda. Sabes si existe para que la primera slide no muestre la barra, para que este no se vea en la portada o en las 3 primeras slides. Gracias nuevamente

Espero acertar con lo que preguntas y con mi respuesta! En el codigo que da Alberto, hay una variable X=1 que determina que desde la primera hasta el final aparezca la barra de progreso. Si tu quieres que comience en tu diapositiva 3 simplemente cambia el 1 por el 3. Así irá desde la 3 hasta el final.
Si me he equivocado pido disculpas y se agradece la rectificación!