¿Cómo copiar diapositivas en su presentación de PowerPoint con VBA Macros?

Última actualización: junio de 2020

Aplicable a: Office 2019 y anteriores. Solo ventanas.

Aquí hay una pregunta de un lector:

Como parte de la presentación de mi informe trimestral a la gerencia, a menudo necesito copiar varias diapositivas de información general de otras presentaciones. No es gran cosa, pero sería un ahorro significativo poder automatizar este ejercicio. ¡Cualquier ayuda de VBA Macro para lograr eso es apreciada!

Como acaba de mencionar, puede automatizar el copiado y pegado de diapositivas en PowerPoint utilizando Visual Basic para aplicaciones. Si necesita crear varias presentaciones cada mes, esta automatización de copia/importación de diapositivas podría convertirse en un gran ahorro de tiempo.

PowerPoint VBA para agregar diapositivas

Empecemos con este sencillo ejercicio.

En primer lugar, asegúrese de que su pestaña de desarrollo esté habilitada y visible. Así es como se hace .

Asumiré que ya ha creado una presentación habilitada para Macro (el tipo de archivo es .pptm), que ha colocado en el mismo directorio que su presentación de origen (a la que me referiré como source.pptm). Aquí se explica cómo crear una presentación de PowerPoint con VBA .

En primer lugar, hagamos una copia de seguridad de esa presentación (simple copiar y guardar).

Luego, sigamos adelante e insertemos la siguiente macro en un nuevo módulo de VBA en su presentación de destino. Todos los detalles sobre cómo hacerlo se pueden encontrar en nuestro tutorial de PowerPoint VBA .

Aquí está el código VBA que necesitará para copiar y pegar automáticamente las diapositivas.

Un par de suposiciones que hice:

  • Su presentación de origen se llama source.pptm
  •  Pegará las diapositivas 2 a 4 de su presentación de origen.
  • Colocará las diapositivas copiadas a partir de la diapositiva 5.

Sub InsertFromOtherPres()

' This short VBA macro copies slides from one presentation and inserts them into another

ActivePresentation.Slides.InsertFromFile FileName:="source.pptm", Index:=1, SlideStart:=2, 
SlideEnd:=4

End Sub

Obviamente, no dude en cambiar la indexación del número de diapositiva en el código para que se ajuste a sus requisitos.

Puede hacer que pase por varias presentaciones e insertar diapositivas específicas de cada una en su informe de gestión.

PowerPoint VBA para duplicar diapositivas

En lugar de copiar diapositivas a otra presentación, es posible que desee clonar una o más diapositivas en su presentación:

Sub CopySlides()

' Short snippet to duplicate the third slide in a presentation, change the index/es accrodingly

ActivePresentation.Slides(3).Duplicate

End Sub

Esos fueron solo un par de ejemplos simples de automatización de PowerPoint. Los lectores que buscan preguntas específicas, no duden en enviar una consulta a través de la página de contacto.

Espero que ayude 🙂

Conservar el formato al copiar diapositivas

El problema con el ejemplo anterior fue que el formato del tema de las presentaciones originales no se copió. Supongamos que las 2 hojas tuvieran un formato diferente, esto es lo que habría sucedido:

Ejemplo 1

 

Sub main()

Dim objPresentation As Presentation

Dim i As Integer

'open the target presentation

Set objPresentation = Presentations.Open("C:\2.pptx")

For i = 1 To objPresentation.Slides.Count

    objPresentation.Slides.Item(i).Copy

    Presentations.Item(1).Slides.Paste

Next i

objPresentation.Close

End Sub

Antes de ejecutar el código
Esta es la presentación con la diapositiva que queremos copiar: Resultado: para solucionar este problema, puede utilizar el siguiente código:
Diapositivas para copiar

Resultado

 

Sub Example2()

Dim objPresentation As Presentation

Dim i As Integer

'open the target presentation

Set objPresentation = Presentations.Open("C:\2.pptx")

For i = 1 To objPresentation.Slides.Count

    objPresentation.Slides.Item(i).Copy

    Presentations.Item(1).Slides.Paste

    Presentations.Item(1).Slides.Item(Presentations.Item(1).Slides.Count).Design = _

        objPresentation.Slides.Item(i).Design

Next i

objPresentation.Close

End Sub

Además de copiar la diapositiva, el código anterior copia el diseño. Si quisiera hacer esto manualmente, copiaría el patrón de diapositivas a la nueva presentación. No puede copiar el patrón de diapositivas usando VBA, pero puede configurar la propiedad de diseño de las diapositivas.

Dejar un comentario

How to Create a Simple Lead Tracking System in Excel Before Buying a CRM

How to Create a Simple Lead Tracking System in Excel Before Buying a CRM

Build a practical Excel lead tracker with tables, dropdowns, follow-up dates, filters, conditional formatting, and a simple PivotTable dashboard before investing in CRM software.

Hoja de asistencia imprimible sencilla para guardería en el hogar: qué registrar y por qué.

Hoja de asistencia imprimible sencilla para guardería en el hogar: qué registrar y por qué.

Utilice esta sencilla hoja de asistencia imprimible para guarderías en el hogar para llevar un registro de llegadas, salidas, ausencias, firmas y documentos requeridos.

Plantilla sencilla de hoja de recuento de inventario para Excel: un diseño listo para el comercio minorista que permite una conciliación rápida.

Plantilla sencilla de hoja de recuento de inventario para Excel: un diseño listo para el comercio minorista que permite una conciliación rápida.

Crea una sencilla hoja de cálculo de Excel para el recuento de inventario en tiendas minoristas, con controles para SKU, ubicación, cantidad contada, variación, recuento y lista para imprimir.

Plantilla imprimible de una página para la estrategia de marketing de negocios locales

Plantilla imprimible de una página para la estrategia de marketing de negocios locales

Utilice esta plantilla imprimible de una página para la estrategia de marketing, donde podrá elegir un público objetivo local, una oferta, una combinación de canales, un presupuesto, acciones y objetivos medibles.

Plantilla gratuita de horarios de turnos para empleados en Excel con calculadora automática de horas.

Plantilla gratuita de horarios de turnos para empleados en Excel con calculadora automática de horas.

Crea gratis un horario de turnos para empleados en Excel con horas de inicio y finalización, deducciones por descansos, gestión de turnos nocturnos, totales semanales y una sencilla calculadora de horas.

Las mejores aplicaciones gratuitas de facturación para pequeñas empresas de servicios en EE. UU. (2026)

Las mejores aplicaciones gratuitas de facturación para pequeñas empresas de servicios en EE. UU. (2026)

Compara las mejores aplicaciones gratuitas de facturación para empresas de servicios en EE. UU. en 2026, incluyendo Zoho Invoice, Square, Wave, PayPal e Invoice Ninja.

Plantilla sencilla de Excel para el seguimiento de nóminas quincenales para equipos pequeños: una configuración ideal para principiantes.

Plantilla sencilla de Excel para el seguimiento de nóminas quincenales para equipos pequeños: una configuración ideal para principiantes.

Crea un sencillo sistema de seguimiento de nóminas quincenales en Excel para un equipo pequeño, con hojas de cálculo claras, fórmulas, controles y límites prácticos para una conciliación de nóminas segura.

Cómo exportar contactos de Salesforce a un formato Excel limpio

Cómo exportar contactos de Salesforce a un formato Excel limpio

Aprende a exportar los contactos de Salesforce a un archivo Excel limpio, conservar los ID y los campos de texto, eliminar duplicados de forma segura y evitar errores comunes en los archivos CSV.

Plantilla imprimible de presupuesto de obra en Excel para pequeños contratistas

Plantilla imprimible de presupuesto de obra en Excel para pequeños contratistas

Cree un presupuesto imprimible para un proyecto de construcción en Excel con categorías de costos prácticas, fórmulas, campos de margen de beneficio, configuración de impresión y una lista de verificación lista para el contratista.

Lista de verificación y plantilla de presupuesto para planificación de eventos imprimible para Word

Lista de verificación y plantilla de presupuesto para planificación de eventos imprimible para Word

Utilice esta lista de verificación imprimible y plantilla de presupuesto para eventos en Word para rastrear responsables, plazos, costos, proveedores y la preparación del día del evento con controles de calidad claros.