Vba powerpoint создание слайда
Используя VBA, мы можем автоматизировать работу, которую мы выполняем для PowerPoint, но сначала, чтобы использовать код или фрагменты VBA для работы в PowerPoint, сначала проработайте параметры безопасности в PowerPoint, чтобы включить все макросы, а затем мы можем использовать справочник PowerPoint VBA для макросов в MS Силовая установка.
Прелесть VBA в том, что мы можем ссылаться на другие продукты Microsoft, такие как «Microsoft Word» и «Microsoft PowerPoint». Обычно мы создаем отчеты в Excel, а затем создаем презентации PowerPoint. Все пользователи Excel обычно тратят значительное количество времени на подготовку презентации из данных и отчетов Excel. Если вы тратите значительное количество времени на подготовку презентаций PowerPoint, этот учебник покажет вам, как создать презентацию PowerPoint из самого Excel. используя кодирование VBA Использование кода VBA Код VBA относится к набору инструкций, написанных пользователем на языке программирования приложений Visual Basic в редакторе Visual Basic (VBE) для выполнения определенной задачи. читать далее .
Включить объектную модель Powerpoint
Давайте выполним следующие шаги.
-
Откройте редактор VBA, а затем перейдите в раздел «Инструменты и ссылки».
Учебник VBA по созданию презентации PowerPoint
Мы можем создать PPT двумя способами: с помощью «Раннего связывания» и «Позднего связывания». Мы покажем вам, как создать презентация в PowerPoint Презентация PowerPoint Полная форма PPT — презентация PowerPoint. Обычно они используются на корпоративных собраниях в образовательных целях, таких как обучение, введение в должность и т. Д., И даже используются студентами для создания своих проектов и заданий в средней школе / колледже. Такие презентации готовятся путем поиска и объединения отдельных слайдов в один с помощью программного обеспечения MS PowerPoint. читать далее с помощью техники «Раннее связывание».
Обычно из excel мы готовим презентации на основе графиков и интерпретации графиков. Итак, для этой цели у меня есть создал несколько простых диаграмм excel Создал несколько простых диаграмм Excel В Excel график или диаграмма позволяют нам визуализировать информацию, которую мы собрали из наших данных. Это позволяет нам визуализировать данные простыми для понимания графическими способами. Для создания диаграмм или графиков в Excel необходимы следующие компоненты: 1 — числовые данные, 2 — заголовки данных и 3 — данные в правильном порядке. читать далее и интерпретации на одном листе.
Шаг 1: Начать подпрограмма в VBA Подпрограмма в VBA SUB в VBA — это процедура, которая содержит весь код, который автоматически дает оператор end sub, а средняя часть используется для кодирования. Оператор Sub может быть как общедоступным, так и частным, а имя подпроцедуры является обязательным в VBA. читать далее . Теперь, чтобы получить доступ к PowerPoint, мы уже включили объектную модель PowerPoint на предыдущих шагах. Чтобы получить к нему доступ, нам нужно объявить переменную как PowerPoint.Application.
Код:
Шаг 2: Чтобы добавить презентацию в PowerPoint, нам нужно объявить переменную как PowerPoint.Presentation.
Код:
Шаг 3: После добавления презентации в PowerPoint нам нужно добавить слайд. Чтобы объявить переменную как PowerPoint.Slide
Код:
Шаг 4: После добавления слайда в PowerPoint нам нужно использовать формы в PowerPoint, т. е. текстовые поля. Чтобы объявить переменную как PowerPoint.Shape
Код:
Код:
Ладно, для начала, этих переменных достаточно.
Шаг 6: Теперь нам нужно запустить PowerPoint из Excel. Поскольку это внешний объект, нам нужно установить его как новый PowerPoint.
Код:
Это запустит новый PowerPoint из Excel.
Шаг 7: Теперь переменная PPApp равна запущенному нами PowerPoint. Теперь сделайте этот PowerPoint видимым и разверните окно.
Код:
В этот момент просто запустите код с помощью клавиши F5 или вручную. Вы должны увидеть запущенное приложение PowerPoint, как показано ниже.
Шаг 8: Теперь нам нужно добавить презентацию в запущенное нами приложение PowerPoint.
Код:
Теперь мы должны увидеть презентацию PowerPoint в таком виде.
Шаг 9: После добавления презентации нам нужно добавить слайд.
Код:
Теперь это добавит титульный слайд, как показано ниже.
Шаг 10: Теперь у нас есть более одной диаграммы на листе, нам нужно просмотреть каждую диаграмму и вставить в презентацию. Ниже приведен код для копирования и вставки графика, а также интерпретации.
Представляет слайд. Коллекция Slides содержит все объекты Slide в презентации.
Примечания
Не путайтесь, если вы пытаетесь вернуть ссылку на один слайд, но в итоге у вас будет объект SlideRange . Один слайд может быть представлен либо объектом Slide , либо slideRangecollection, который содержит только один слайд, в зависимости от того, как вы возвращаете ссылку на слайд. Например, если вы создаете и возвращаете ссылку на слайд с помощью метода Add , слайд представлен объектом Slide . Однако если вы создаете и возвращаете ссылку на слайд с помощью метода Дубликат , слайд представлен коллекцией SlideRange , которая содержит один слайд. Так как все свойства и методы, применимые к объекту Slide , также применяются к коллекции SlideRange , которая содержит один слайд, вы можете работать с возвращенным слайдом таким же образом, независимо от того, представлен ли он объектом Slide или коллекцией SlideRange .
В следующих примерах описано, как:
Возвращение слайда, указываемого по имени, номеру индекса или номеру слайд-номера
Возвращение слайда в выборе
Возвращение слайда, который в настоящее время отображается в любом окне документа или окне отображения слайдов, которое вы указали.
Создайте новый слайд
Пример
Используйте слайды (индекс), где индекс — это имя слайда или номер индекса, или используйте Slides.FindBySlideID (индекс), где индекс — это номер слайда, чтобы вернуть один объект Slide. В следующем примере устанавливается макет слайда в активной презентации.
В следующем примере устанавливается макет слайда с ID-номером 265.
Чтобы вернуть один объект Slide, используйте Selection.SlideRange (index), где индексом является имя слайда или номер индекса в выборе. В следующем примере устанавливается макет слайда в выборе в активном окне при условии, что выбран по крайней мере один слайд.
Если выбран только один слайд, вы можете использовать Selection.SlideRange для возврата коллекции SlideRange , которая содержит выбранный слайд. В следующем примере устанавливается макет слайда в текущем выборе в активном окне при условии, что выбран ровно один слайд.
Используйте свойство Slide , чтобы вернуть слайд, отображаемый в указанном окне документа или окне отображения слайдов. В следующем примере копируется слайд, который в настоящее время отображается в окне документа два в буфер обмена.
Используйте метод Добавить , чтобы создать новый слайд и добавить его в презентацию. В следующем примере в начале активной презентации добавляется слайд заголовка.
Методы
Свойства
См. также
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Данный материал основан и доработан по материалам оригинальной статьи "EasyTweaks - How to create and add slides to PowerPoint presentations with VBA".
Существует ли способ автоматизировать создание презентаций PowerPoint с нуля с последующим быстрым добавлением слайдов к существующей презентации? Мы подумали, что данную задачу для PowerPoint вполне под силу решить с помощью макросов. Однако, как известно, PowerPoint не включает средство записи макросов Macro Recorder (в отличие от Excel и Word, которые имеют встроенные средства записи макросов). Поэтому у нас остаётся лишь старый добрый Visual Basic for Application (VBA), который мы можем использовать для создания простых макросов для автоматизации PowerPoint. Разумеется, существуют и альтернативные варианты автоматизации PowerPoint, но они выходят за рамки данной статьи.
В этом кратком руководстве мы рассмотрим три различных варианта использования:
- Создание новой презентации (пустой или по шаблону);
- Добавление слайдов к существующей презентации;
- Сочетание двух предыдущих вариантов.
Создайте презентацию PowerPoint и сохраните ее с возможностью выполнения макросов (файл с расширением *.pptm).
Посмотрите на Ленту (Ribbon). Если в Ленте нет вкладки "Разработчик" (Developer), то перед началом написания кода необходимо включить эту вкладку (меню ленты File - Options).
Далее во вкладке Trust Center, включите возможность выполнения макросов в PowerPoint.
После того, как вы сделаете вкладку "Разработчик" (Developer) видимой для вашей ленты, перейдите на эту вкладку и нажмите кнопку Visual Basic (или просто нажмите Alt + F11), чтобы открыть Visual Basic IDE.
Макрос VBA для создания презентации и добавления слайдов
В редакторе Visual Basic щелкните правой кнопкой мыши VBAProject и выберете пункт вставки модуля (Insert > Module).
Вставьте следующий код во вновь созданный модуль:
Нажмите в меню File, а затем Save… При сохранении следует выбрать формат с поддержкой макросов (*.pptm):
Чтобы запустить код, нажмите Run, а затем выберите Run Sub/UserForm (или просто F5).
В итоге мы увидим созданный и открытый файл презентации.
Теперь редактор Visual Basic можно закрыть.
Как создавать и вставлять Фигуры (Shapes) в PowerPoint с помощью VBA
Захотелось автоматизировать довольно обыденную задачу по созданию слайдов PowerPoint. При автоматизации PowerPoint вы обычно работаете с коллекцией слайдов и фигур. Слайды говорят сами за себя, а фигуры - это почти все остальное, включая текстовые поля, кнопки действий, медиа-объекты, метки, изображения, выноски, блок-схемы и т.д.. Хотя мы будем демонстрировать приемы работы с PowerPoint, часть синтаксиса на самом деле вполне применима к Microsoft Word и Excel.
Приступим к работе с фигурами. Во-первых, давайте продолжим и откроем редактор VBA, нажав Alt + F11. Если вы следовали предыдущему руководству, у вас должен быть Module1 в вашем списке модулей.
Добавление текстового поля через VBA
Начнем с добавления вертикального текстового поля к нашему первому слайду презентации. Добавьте следующий код в Module1 , затем нажмите кнопку Сохранить (Ctrl + S) и запустите макрос (пункт меню Run Sub/User Form или просто нажмите F5).
Обратите внимание, что вы можете довольно легко изменить размер текстового поля с помощью VBA. В этом случае мы изменим размер первой фигуры на втором слайде, свободно меняйте код при необходимости.
Текстовые эффекты PowerPoint с VBA
Давайте теперь предположим, что мы хотим добавить текстовое поле ко всем слайдам в презентации, на этот раз немного более визуально привлекательное. Для этого мы будем использовать VBA для создания пользовательских текстовых эффектов, которые мы можем встроить в один или несколько слайдов презентации. Сначала мы пройдемся по слайдам презентации, а затем добавим текстовый эффект по мере необходимости.
Посмотрим, что получилось:
Обратите внимание, что вы можете использовать простой водяной знак для достижения этого конкретного результата.
Выноски PowerPoint с VBA
В нашем следующем примере мы добавим выноску ко второму слайду презентации.
Создание презентации PowerPoint из книги Excel
Рассмотрим ещё один случай, когда вы хотите создать презентацию PowerPoint прямо из электронной таблицы Excel. Вы можете использовать аналогичный метод в Word и других приложениях Microsoft Office.
Данный пример демонстрирует возможность вызова другого приложения MS Office из первоначально запущенного приложения (прим. пер.).
Сперва создайте новую книгу Excel и сохраните ее как книгу с макросами (файл с расширением *.xlsm).
Войдите в редактор Visual Basic Editor (меню ленты Developer > Visual Basic, либо сочетанием клавиш Alt+F11)
В редакторе VBE свяжите электронную таблицу с моделью данных PowerPoint, выбрав в меню (Tools > References), Microsoft PowerPoint Object Library.
Вставьте новый модуль VBA для внесения кода процедуры Visual Basic.
Вставьте приведенный ниже код VBA непосредственно в модуль VBA и нажмите иконку Save.
(При необходимости, вы можете внести свои изменения в сценарий.)
Вставьте кнопку прямо в электронную таблицу Excel (меню Developer > Insert, а затем выберите Button (Form Control)).
Привяжите в диалоговом окне процедуру VBA, созданную вами ранее, к вставляемой кнопке.
Коллекция всех объектов Slide в указанной презентации.
Комментарии
Если ваше Visual Studio включает Microsoft.Office. Interop. PowerPoint эта коллекция сопо-
- Microsoft. Office. Interop. PowerPoint. Slides.GetEnumerator (для переумерия объектов Slide.)
В следующих примерах описано, как:
Создание слайда и добавление его в коллекцию
Возвращение одного слайда, указываемого по имени, номеру индекса или номеру слайд-номера
Возвращение подмножество слайдов в презентации
Применение свойства или метода для всех слайдов в презентации одновременно
Пример
Чтобы вернуть коллекцию Слайдов, используйте свойство Slides. Используйте метод Добавить , чтобы создать новый слайд и добавить его в коллекцию. В следующем примере в активную презентацию добавляется новый слайд.
Используйте слайды (индекс), где индекс — это имя слайда или номер индекса, или используйте Slides.FindBySlideID (индекс), где индекс — это номер слайда, чтобы вернуть один объект Slide. В следующем примере устанавливается макет слайда в активной презентации.
В следующем примере устанавливается макет слайда с именем "Большая диаграмма" в активной презентации. Обратите внимание, что слайды автоматически создаются имена формы Sliden (где n является integer) при их создания. Чтобы назначить слайду более значимое имя, используйте свойство Name .
Используйте Slides.Range (индекс), в котором индексом является номер индекса слайдов или имя или массив номеров индексов слайдов или массив имен слайдов, чтобы вернуть объект SlideRange, который представляет подмножество коллекции Slides. В следующем примере задается фоновое заполнение слайдов одного и трех в активной презентации.
Если вы хотите сделать что-то для всех слайдов в презентации одновременно (например, удалить все из них или заставить свойство для всех), используйте Slides.Range без аргументов для создания коллекции SlideRange , которая содержит все слайды в коллекции Slides , а затем применить соответствующее свойство или метод к коллекции SlideRange . В следующем примере задается фоновое заполнение для всех слайдов в активной презентации
См. также
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Эти среды программирования позволяют превратить процесс программирования в увлекательное занятие. Безусловно, в инвариантной (при изучении базового курса) части обучения наиболее удобна среда программирования Qbasic ( Русская версия). В части вариативной (профильный курс) мы можем использовать обьектно-ориентированные среды программирования. В связи с этим хочу обратить внимание своих коллег на редактор Visual Basic (VB), который входит в состав Microsoft Office 97. Доступ к редактору можно получить в меню сервис макросы из редакторов Word, Excel, Power Point .
В других более поздних выпусках Microsoft Office, мне не удалось обнаружить этого замечательного свойства редактора VB. Есть еще одна причина по которой я бы рекомендовал именно VB из Office 97, во многих школах компьютеры с оперативной памятью менее 32 Mбайт. Тогда как Visual Basic 6, Delphi 6, 7, Macromedia Flash, Java 2 и т.д. требуют большую оперативную память. Примеры работы с редактор VB, я покажу с использованием Power Point 97 связи с тем, что многие из преподавателей используют этот редактор для создания презентаций во время обучения. Создадим тестовую программу, и вы сможете использовать принцип работы этой программы при создании обучающих презентаций. Преподаватель не знакомый с программированием (обучающий по другим предметам) сможет быстро разобраться и применить VB при создании презентаций-уроков по своим предметам.
Программирование на VB в Power Point
Вы можете использовать слайд как форму, для того чтобы поместить различные элементы управления вызываем в меню вид панель инструментов Visual Basic .
Затем выделяем нужный элемент и рисуем его на слайде. Покажем на примере
Для этого создадим слайд, введем текст, поменяем фон, поместим два поля и кнопку. .
Чтобы поменять текст на кнопке надо выделить кнопку и правой кнопкой мыши вызвать в контекстном меню свойства, затем в свойстве Caption набрать текст. В нашем случае мы набрали Пуск. Затем двойным щелчком по кнопке Пуск переходим в редактор VB и набираем код :
Private Sub CommandButton1_Click()
км = Val(TextBox1.Text)
м = км * 1000 / 3600
TextBox2.Text = м & "M/C"
TextBox1.Text = ""
End Sub
Все можно запустить слайд и проверить.
Замечание установите защиту от макросов как средний(запрашивает запускать или нет макросы).
Использование VB для создания примеров
Вот как выглядит слайд .Здесь поле и кнопка. В кнопке мы изменили свойства текста и фон кнопки. В свойствах вы легко разберетесь (слева свойства справа можно изменять).
Свойства можно менять и в других элементах.
Нажимаем по кнопке проверка и набираем код программы:
Private Sub CommandButton1_Click()
c = Val(TextBox1.Text)
If c = 4 Then MsgBox "Верно"
If c <> 4 Then MsgBox "Неверно"
TextBox1.Text = ""
End Sub
Создание Обучающей презентации с использованием VB
Сейчас довольно много говорят о обучающих электронных изданиях. Уже довольно много учителей, создающих презентации к уроку. Есть еще готовые электронные издания, но они иногда не совпадают с видением преподавателя об обучении предмету. Я в своей практике использую презентацию как средство обучения и контроля знаний. Вот пример.
Мы создаем презентацию по теме “Основные устройства ЭВМ”, где добавим средство контроля на основе теста. Для этого создадим слайд, который будет в конце презентации. (Вы можете создать их после прохождения темы и дальше продолжить).
Слайд выглядит вот так .
Мы поместили в слайд кнопку и изменили его свойства, теперь на ней текст Вопросы. Вызовем редактор VB(двойным щелчком по кнопке). Затем вставим форму, для этого в меню вставка выберем UserForm и мы увидим элементы управления для формы, если нет, вызовите их из меню вид. Вызовете в меню вид, окно проекта и окно свойств проекта. Нарисуем на форме элементы управления: две надписи, две кнопки, и четыре переключателя. Свойство формы поменяем, зададим имя формы name “test1”, изменим также имена переключателей свойство name O1, O2, O3, O4, поменяем свойства caption надписей (label), свойства кнопок.
‘Набираем программный код для кнопки дальше(для этого щелкнем по кнопке):Public x, i As Integer ‘Переменные x, i должны быть доступны для всех подпрограмм
Private Sub CommandButton1_Click()
i = i + 1
Select Case i
Case 1
label1.Caption = "Главным устройством персонального компьютера является?"
label2.Caption = "1)Мышъ 2)Процессор 3)Жесткий диск 4)ПЗУ"
Case 2
If O2.Value = True Then
x = x + 1
End If
label1.Caption = "Энергонезависимым устройством персонального компьютера является?"
label2.Caption = "1)ОЗУ 2)Процессор 3)СD-ROM 4)ПЗУ"
Case 3
If O4.Value = True Then
x = x + 1
End If
label1.Caption = "Манипулятор мышь это устройство"
label2.Caption = "1)Вывода 2)ввода 3)Считывания информации 4)Сканирования информации"
Case 4
If O2.Value = True Then
x = x + 1
End If
label1.Caption = "К внешним запоминающим устройствам относятся"
label2.Caption = "1) Процессор 2) Монитор 3)Принтер 4)Жесткий диск"
Case 5
If O4.Value = True Then
x = x + 1
End If
label1.Caption = "Плоттер это устройство"
label2.Caption = "1) для считывания графической информации 2) для ввода 3)для вывода 4)для печати"
Case 6
If O1.Value = True Then
x = x + 1
End If
If x = 5 Then
CommandButton1.Caption = "Выход"
label1.Caption = "Вы справились нажмите выход"
test1.BackColor = &H8080& ‘форма принимает зеленый цвет
label2.Caption = ""
end if
If x = 4 Then
CommandButton1.Caption = "Выход"
label1.Caption = "Вы справились, на 3 нажмите выход"
test1.BackColor = &HFFFF& ‘форма принимает желтый цвет
Label2.Caption = ""
ElseIf x < 4 Then
label2.Caption = ""
CommandButton2.Visible = True
label1.Caption = "Вы не справились, хотите снова, нажми снова, а затем дальше"
Test1.BackColor = &HFF& ‘форма принимает красный цвет
End If
Case 7
End
End Select
CLS ‘Вызов подпрограммы очистки переключателей
End Sub
‘Подпрограмма очистки переключателей
Sub CLS()
O1.Value = False
O2.Value = False
O3.Value = False
O4.Value = False
End Sub
‘Набираем программный код для кнопки снова(для этого щелкнем по кнопке):Private Sub CommandButton2_Click()
i = 0 ‘Обнуляем переменные
x = 0
CommandButton2.Visible = False
End Sub
Программа написана
Возвращаемся к слайду (Закроем редактор VB). Напишем код для кнопки (вопросы) запуска теста, щелкнем по ней, и введем: test1.Show.
Обратите внимание, что в зависимости от результата форма меняет цвет, что позволяет оценивать работу учащихся визуально.
Заключение
Читайте также: