Урок за Excel VBA PowerPoint
VBA е мощен инструмент, който може да се използва във всяка област на интегрирани инструменти на Microsoft. Подобно на MS Excel, Powerpoint също има разпоредба за създаване на макрос и автоматизиране на презентацията. Автоматизацията може да бъде под всякаква форма. Виждали сте презентации, в които слайдовете са толкова големи и подробни, че понякога се стига до 50+ слайда, само за да се покрие тема за обучение или доклад. Така че вместо да добавяме диаграмите в PowerPoint от Excel, можем да създадем код, който директно да копира диаграмите от Excel и да го постави в слайда на PowerPoint.
Как да създадете PowerPoint презентация от Excel VBA?
По-долу е примерът за създаване на Powerpoint презентация с помощта на VBA код в Excel:
Можете да изтеглите този шаблон на VBA PowerPoint Excel тук - шаблон на VBA PowerPoint ExcelПример за VBA PowerPoint
Нека първо създадем диаграма в excel. За това имаме нужда от данни. По-долу имаме някои данни за продажбите на 8 продавачи.
Сега нека да създадем колонна диаграма или графика с помощта на горните данни. Ще видим по-долу, вече имаме графа с колони със заглавие Количество продадено и всички етикети.
Сега нашата задача е да вкараме тази графика в слайд PowerPoint, както е показано тук, със заглавието на диаграмата като заглавие на слайда на PowerPoint. За това трябва да активираме PowerPoint във VBA.
Изпълнете следните стъпки:
Стъпка 1: Отидете в менюто с инструменти на VBA, както е показано по-долу и изберете опция Референции …, както е показано по-долу.
Стъпка 2: След като направим това, ще получим прозорци VBA Project References. От този списък изберете MS PowerPoint 15.0 Object Library, както е показано по-долу. Това ще активира всички команди, свързани с MS PowerPoint във VBA. Без това не можем да стартираме VBA в PowerPoint. Поставете отметка в квадратчето на споменатата библиотека и щракнете върху Ок .
Стъпка 3: Сега за писане на кода за VBA PowerPoint, се нуждаем от модул. За да получите нов модул, отидете в менюто Вмъкване и изберете опция Модул, както е показано по-долу.
Стъпка 4: В този модул напишете подкатегорията на VBA PowerPoint или в друго име според нуждите си, както е показано по-долу.
Код:
Sub VBA_Presentation () Край Sub
Стъпка 5: Сега за създаване на презентация с помощта на Chart in excel, имаме нужда от няколко променливи. Нека разгледаме 5 променливи като:
- PAPplication за PowerPoint Application.
- PPT за презентация на PowerPoint,
- PPTSlide за PowerPoint Slide,
- PPTS форми за PowerPoints,
- PPTCхартира за Excel Chart Object.
Код:
Sub VBA_Presentation () Dim PAplication като PowerPoint.Application Dim PPT като PowerPoint.Presentation Dim PPTSlide като PowerPoint.Slide Dim PPTShapes като PowerPoint.Shape Dim PPTCharts като Excel.ChartObject End Sub
Стъпка 6: Сега използвайте командата Set, за да добавите New PowerPoint Application, както е показано по-долу.
Код:
Под VBA_Presentation () Dim PAplication като PowerPoint.Application Dim PPT като PowerPoint.Presentation Dim PPTSlide като PowerPoint.Slide Dim PPTShapes като PowerPoint.Shape Dim PPTCharts като Excel.ChartObject Set PAplication = New PowerPoint.Application End Sub
Стъпка 7: В ред от кодове направете приложението PowerPoint видимо и използвайте msoCTrue за мистериозна оценка на неправилния начин. И след това същото приложение ще бъде използвано като Maximized в PowerPoint, за да получите пълния изглед.
Код:
Под VBA_Presentation () Dim PAplication като PowerPoint.Application Dim PPT като PowerPoint.Presentation Dim PPTSlide като PowerPoint.Slide Dim PPTShapes като PowerPoint.Shape Dim PPTCхартира като Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.VplusivePPeplication.Cis ppWindowMaximized End Sub
Стъпка 8: Сега задайте PPT, който е нашето представяне, за да добавите в MS PowerPoint Application,
Код:
Под VBA_Presentation () Dim PAplication като PowerPoint.Application Dim PPT като PowerPoint.Presentation Dim PPTSlide като PowerPoint.Slide Dim PPTShapes като PowerPoint.Shape Dim PPTCхартира като Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.VplusivePPeplication.Cis ppWindowMaximized Set PPT = PAplication.Presentations.Add End Sub
Стъпка 9: Сега ще използваме комбинация от For-Next и If-Else. Започвайки с цикъл For-Next.
Код:
Под VBA_Presentation () Dim PAplication като PowerPoint.Application Dim PPT като PowerPoint.Presentation Dim PPTSlide като PowerPoint.Slide Dim PPTShapes като PowerPoint.Shape Dim PPTCхартира като Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.VplusivePPeplication.Cis ppWindowMaximized Set PPT = PAplication.Presentations.Add for Next End Sub
Стъпка 10: В За цикъл на PPTCharts, първите активни диаграми в excel.
Код:
Под VBA_Presentation () Dim PAplication като PowerPoint.Application Dim PPT като PowerPoint.Presentation Dim PPTSlide като PowerPoint.Slide Dim PPTShapes като PowerPoint.Shape Dim PPTCхартира като Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.VplusivePPeplication.Cis ppWindowMaximized Set PPT = PAplication.Presentations.Add за всеки PPTCharts в ActiveSheet.ChartObjects Следващ PPTCharts End Sub
Стъпка 11: По-долу е кодът за поставяне на диаграмата от excel към слайд PowerPoint. Използвайте код, за да добавите слайд в определена PAplication, добавяйки +1 слайд всеки път, когато стартираме кода.
Код:
Под VBA_Presentation () Dim PAplication като PowerPoint.Application Dim PPT като PowerPoint.Presentation Dim PPTSlide като PowerPoint.Slide Dim PPTShapes като PowerPoint.Shape Dim PPTCхартира като Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.VplusivePPeplication.Cis ppWindowMaximized Set PPT = PAplication.Presentations.Add за всеки PPTCharts в ActiveSheet.ChartObjects PAplication.ActivePresentation.Slides.Add PAplication.ActivePresentation.Slides.Count + 1, ppLayoutText Следващ PPTCharts End Sub
Стъпка 12: Сега в продължението на следващия ред код, използвайте по-долу набор от кодове, за да зададете активен изглед на прозореца. Това ще се използва за слайд, след като Chart бъде поставен в презентацията на PowerPoint.
Код:
Под VBA_Presentation () Dim PAplication като PowerPoint.Application Dim PPT като PowerPoint.Presentation Dim PPTSlide като PowerPoint.Slide Dim PPTShapes като PowerPoint.Shape Dim PPTCхартира като Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.VplusivePPeplication.Cis ppWindowMaximized Set PPT = PAplication.Presentations.Add за всеки PPTCharts в ActiveSheet.ChartObjects PAplication.ActivePresentation.Slides.Add PAplication.ActivePresentation.Slides.Count + 1, ppLayoutText PAplication.ActiveWindow.View.delide.Ge.Sliet.Ge.Sext.Sele.Ge.Sext.Sext.Ge.Sext.Sext.Sext.Gext.Sext.Sext.Sext.Gext.Sext. = PAplication.ActivePresentation.Slides (PAplication.ActivePresentation.Slides.Count) Следващ PPTCharts End Sub
Стъпка 13: След като сте готови, изберете променливата PPTChart, която дефинирахме по-рано. След това копирайте избраната активна диаграма в областта на диаграмата, където ще бъде поставена. И използвайте командата Paste Special, за да залепите диаграмата със снимки.
Код:
Под VBA_Presentation () Dim PAplication като PowerPoint.Application Dim PPT като PowerPoint.Presentation Dim PPTSlide като PowerPoint.Slide Dim PPTShapes като PowerPoint.Shape Dim PPTCхартира като Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.VplusivePPeplication.Cis ppWindowMaximized Set PPT = PAplication.Presentations.Add за всеки PPTCharts в ActiveSheet.ChartObjects PAplication.ActivePresentation.Slides.Add PAplication.ActivePresentation.Slides.Count + 1, ppLayoutText PAplication.ActiveWindow.View.delide.Ge.Sliet.Ge.Sext.Sele.Ge.Sext.Sext.Ge.Sext.Sext.Sext.Gext.Sext.Sext.Sext.Gext.Sext. = PAplication.ActivePresentation.Slides (PAplication.ActivePresentation.Slides.Count) PPTCharts.Select ActiveChart.ChartArea.Copy PPTSlide.Shapes.PasteSpecial (DataType: = ppPasteMetafilePicture) .Изберете следващи PPTCharts
Стъпка 14: Сега изберете формата на диаграмата, която е на първа позиция като диапазон на текст. И носете същото заглавие, което е „ Количество продадено “ в презентацията на PowerPoint.
Код:
Под VBA_Presentation () Dim PAplication като PowerPoint.Application Dim PPT като PowerPoint.Presentation Dim PPTSlide като PowerPoint.Slide Dim PPTShapes като PowerPoint.Shape Dim PPTCхартира като Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.VplusivePPeplication.Cis ppWindowMaximized Set PPT = PAplication.Presentations.Add за всеки PPTCharts в ActiveSheet.ChartObjects PAplication.ActivePresentation.Slides.Add PAplication.ActivePresentation.Slides.Count + 1, ppLayoutText PAplication.ActiveWindow.View.delide.Ge.Sliet.Ge.Sext.Sele.Ge.Sext.Sext.Ge.Sext.Sext.Sext.Gext.Sext.Sext.Sext.Gext.Sext. = PAplication.ActivePresentation.Slides (PAplication.ActivePresentation.Slides.Count) PPTCharts.Select ActiveChart.ChartArea.Copy PPTSlide.Shapes.PasteSpecial (тип данни: = ppPasteMetafilePicture) .Изберете PPTSlide.Shapes (1) .TextFrame.TextRange.Text = PPTCharts .Chart.ChartTitle.Text Next PPTCharts End Sub
С това завършва кодът за VBA PowerPoint.
Стъпка 15: Сега компилирайте кода стъпка по стъпка, за да знаете дали някой ред код има грешка чрез натискане на функционален клавиш F8. И след това стартирайте кода, като кликнете върху бутона Възпроизвеждане, който е под лентата на менюто, както е показано по-долу.
Ще получите диаграмата, публикувана във файла PowerPoint, в първия слайд от нея, както е показано по-долу.
Тъй като кодът е голям, така и пълният код може да се види в текстовото поле по-долу.
Плюсове на Excel VBA PowerPoint
- Използването на VBA в Powerpoint улеснява работата, ако ppt файлът има толкова много слайдове с огромно съдържание.
- VBA с Powerpoint дава нотка на автоматизация дори при налични ограничени функции.
Минуси на Excel VBA PowerPoint
- Трябва да изберем обектната библиотека на Microsoft PowerPoint 15.0 от опцията Справочник, разположена в опция меню Инструмент, която ни трябва в началото на пример-1, всеки път, когато стартираме кода за PowerPoint.
Неща, които трябва да запомните
- Запазете файла във формат за представяне на макрос, след като напишете кода. Това ще ни помогне да избегнем загубата на кода и да използваме едно и също многократно в бъдеще.
- Функцията за прекодиране няма да работи тук, тъй като трябва да преминем от Excel към PowerPoint, променяйки интерфейса между страниците.
- Винаги компилирайте кода, преди да стартирате. Това ще ви помогне да намерите грешката в кода. Това е много полезно, когато пишем големи редове от код.
- За да стартираме и реализираме кода, ние трябва да отворим листа с excel с Chart, който искаме да го поставим в слайд PowerPoint.
- Можем да подравним диаграмата в PowerPoint според нашите нужди.
Препоръчителни статии
Това е ръководство за VBA PowerPoint. Тук обсъждаме как да създадете PowerPoint презентация от Excel, използвайки VBA код, заедно с практически пример и свалящ се шаблон на excel. Можете да разгледате и другите ни предложени статии -
- Колона за изтриване на VBA
- Лента на състоянието в Excel
- VBA Премахване на дубликати
- Създайте електронна таблица в Excel