Как да копирате добавени слайдове във вашата PowerPoint презентация с VBA макроси?

Последна актуализация: юни 2020 г

Приложимо за: Office 2019 и по-стари. Само за Windows.

Ето един въпрос от читател:

Като част от представянето на моя тримесечен отчет пред ръководството, често ми се налага да копирам няколко общи информационни слайда от други презентации. Не е голяма работа, но би било значително спестяване, ако можете да автоматизирате това упражнение. Всяка помощ от VBA Macro за постигането на това се оценява!

Както току-що споменахте, можете да автоматизирате копирането и поставянето на слайдове в PowerPoint с помощта на Visual Basic за приложения. Ако трябва да създавате няколко презентации всеки месец, тази автоматизация за копиране/импортиране на слайд може да се превърне в огромна икономия на време!

PowerPoint VBA за добавяне на слайдове

Нека да продължим с това просто упражнение.

Първо се уверете, че вашият раздел за разработка е активиран и видим. Ето как да направите това .

Предполагам, че вече сте създали презентация с активиран макрос (тип на файла е .pptm), че сте поставили в същата директория като вашата изходна презентация (която ще наричам source.pptm). Ето как да създадете презентация на PowerPoint с VBA .

Първо, нека направим резервно копие на тази презентация (просто копиране и запазване).

След това нека да продължим и да вмъкнем следния макрос в нов VBA модул във вашата дестинационна презентация. Всички подробности за това как да направите това можете да намерите в нашия урок за PowerPoint VBA .

Ето VBA кода, който ще ви е необходим, за да копирате и поставите слайдовете автоматично.

Няколко предположения, които направих:

  • Вашето изходно представяне се казва source.pptm
  •  Ще поставите слайдове 2-4 от вашата изходна презентация
  • Ще поставите копираните слайдове като начален слайд 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

Очевидно, не се колебайте да промените индексирането на номера на слайда в кода, така че те да отговарят на вашите изисквания.

Можете да го накарате да премине през няколко презентации и да вмъкнете конкретни слайдове от всяка във вашия отчет за управление.

PowerPoint VBA за дублиране на слайдове

Вместо да копирате слайдове в друга презентация, може да искате да клонирате един или повече слайдове във вашата презентация:

Sub CopySlides()

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

ActivePresentation.Slides(3).Duplicate

End Sub

Това бяха само няколко прости примера за автоматизация на PowerPoint. Читатели, които търсят конкретни въпроси, не се колебайте да изпратете запитване чрез страницата за контакти.

Надявам се да помогне 🙂

Запазване на форматирането при копиране на слайдове

Проблемът с предишния пример беше, че оригиналното форматиране на темата на презентациите не беше копирано. Да предположим, че двата листа са имали различно форматиране, ето какво би се случило:

Пример 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

Преди изпълнение на кода
Това е презентацията със слайда, който искаме да копираме: Резултат: За да преодолеете този проблем, можете да използвате кода по-долу:
Слайдове за копиране

Резултат

 

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

Освен копирането на слайда, кодът по-горе копира дизайна. Ако искате да направите това ръчно, ще копирате слайдмастъра в новата презентация. Не можете да копирате слайдмастъра с помощта на VBA, но вместо това можете да зададете свойството дизайн на слайдовете.

Оставете коментар

Проста презентация за обучение при въвеждане в длъжност за нови служители: Практически шаблон от 12 слайда

Проста презентация за обучение при въвеждане в длъжност за нови служители: Практически шаблон от 12 слайда

Създайте проста презентация за въвеждане в длъжност с практична структура от 12 слайда, обхващаща очакванията за ролята, инструменти, сигурност, политики, безопасност и действия за първата седмица.

Как да експортирате контакти от Salesforce в чист Excel формат, без да разваляте ID-тата или телефонните номера

Как да експортирате контакти от Salesforce в чист Excel формат, без да разваляте ID-тата или телефонните номера

Експортирайте контакти от Salesforce в Excel чисто: създайте правилния отчет, експортирайте само детайли в CSV, импортирайте с Power Query, запазете ID-тата и водещите нули, премахнете дублираните записи безопасно и проверете резултата.

Шаблон за седмичен график за почистване за отпечатване за домакини в Airbnb (Word и PDF)

Шаблон за седмичен график за почистване за отпечатване за домакини в Airbnb (Word и PDF)

Използвайте този седмичен график за почистване за отпечатване за домакини в Airbnb, за да организирате почистването при смяна на гостите, дълбокото почистване, зареждането с консумативи, проверките за безопасност и печата от Word към PDF.

Безплатен месечен календар за сметки за Excel: Практична настройка за 2026 г.

Безплатен месечен календар за сметки за Excel: Практична настройка за 2026 г.

Организирайте месечните си сметки в Excel с безплатен шаблон за календар, проследяване на крайни срокове, формули за статус, полета за автоматично плащане и практически съвети за паричния поток.

Формулата в Excel не се изчислява автоматично? Поправете я в 3 лесни стъпки

Формулата в Excel не се изчислява автоматично? Поправете я в 3 лесни стъпки

Поправете формули в Excel, които не се изчисляват автоматично, в три стъпки: активирайте автоматичното изчисление, преизчислете и поправете клетките с формули.

Шаблон за проследяване на разходите на независимите изпълнители за свободни професии в САЩ: Какво да следите през 2026 г.

Шаблон за проследяване на разходите на независимите изпълнители за свободни професии в САЩ: Какво да следите през 2026 г.

Създайте практичен инструмент за проследяване на разходите за свободни професии в САЩ с категории, съвместими със Schedule C, полета за разписки, проследяване на километраж и актуализации на правилата на IRS за 2026 г.

Най-добрите безплатни приложения за фактуриране за малки фирми за услуги в САЩ (2026)

Най-добрите безплатни приложения за фактуриране за малки фирми за услуги в САЩ (2026)

Сравнете най-добрите безплатни приложения за фактуриране за фирми за услуги в САЩ през 2026 г., включително Zoho Invoice, Wave, Square, PayPal и Invoice Ninja.

Безплатен Excel шаблон за проследяване на разходите и приходите от имоти под наем: Ръководство за начинаещи

Безплатен Excel шаблон за проследяване на разходите и приходите от имоти под наем: Ръководство за начинаещи

Използвайте безплатен Excel тракер за имоти под наем, за да организирате приходите, разходите, имотите и месечния паричен поток. Научете какво да записвате, как да го настроите и какви грешки да избягвате.

Безплатен шаблон за презентация на статус на проекта за Agile екипи: Какво трябва да включите?

Безплатен шаблон за презентация на статус на проекта за Agile екипи: Какво трябва да включите?

Използвайте този безплатен, готов за копиране шаблон за презентация на статуса на Agile проекта, за да покажете напредъка, рисковете, решенията и следващите стъпки, без актуализациите да се превърнат в шум.

Как да поправите „Аудиото при запис на екрана в PowerPoint не работи“

Как да поправите „Аудиото при запис на екрана в PowerPoint не работи“

Записът на екрана в PowerPoint има видео, но няма звук? Проверете контролата за аудио, достъпа до микрофона в Windows, настройките за вход, съвместимостта при възпроизвеждане, актуализациите и поправката.