Tw-city.info

IT Новости
7 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Программы на vba в powerpoint

14. Программирование в PowerPoint

Работа с PowerPoint из VBA, автоматизация создания презентаций, объекты PowerPoint.Application, PowerPoint.Presentation, PowerPoint.Slide, PowerPoint.Shape

Использовать возможности VBA в PowerPoint на предприятиях приходится намного реже, чем возможности Word или Excel, однако иногда такие потребности возникают. Часто специалисты используют презентации PowerPoint для сопровождения выступлений при демонстрации продуктов или услуг, отчетов о деятельности и т.п. Поскольку со слайдами можно связывать звуковое сопровождение, PowerPoint активно используется для целей обучения — например, подготовки интерактивных уроков. Еще одна часто используемая возможность — создание звуковых книг с картинками для детей. При помощи PowerPoint можно создавать фотоальбомы со звуковым сопровождением, диафильмы со звуком, детские игры и многое другое. И как только данных становится много (а, например, цифровых фотографий редко бывает мало) сразу встает вопрос об автоматизации.

PowerPoint — программа работы с презентациями (то есть наборами графических изображений — слайдов, иногда со звуковым сопровождением). Чаще всего приходится программным способом выполнять следующие действия:

  • автоматически создавать презентации (например, на основе набора изображений в каталоге);
  • производить обработку презентаций — менять формат изображения, добавлять или изменять аудиосопровождение и т.п. Чаще всего подобные действия приходится производить в тех ситуациях, когда презентации были связаны с внешними файлами и эти файлы изменяются.

В PowerPoint система объектов выглядит следующим образом:

  • объект самого высокого уровня — Application, с набором свойств и методов, очень похожим на аналогичные объекты в Word и Excel;
  • на уровень ниже — коллекция Presentations с объектами Presentation. Можно сказать, что эти объекты по месту в иерархии примерно аналогичны объекту Workbook в Excel;
  • в объект Presentation встроена коллекция Slides с объектами Slide (в качестве примерного аналога можно привести листы в книгах Excel);
  • в объект Slide встроена коллекция Shapes с объектами Shape. Объекты Shape представляют все элементы слайда (всего их 22 типа) — изображение, надпись, диаграмма, заголовок, таблица, автофигура и т.п.

Вокруг этих четырех объектов — Application, Presentation, Slide и Shape и строится вся объектная модель PowerPoint.

В этой главе мы не будем приводить справку по свойствам и методам различных объектов PowerPoint (нужные свойства и методы можно быстро найти при помощи макрорекордера), а вместо этого проиллюстрируем работу с PowerPoint на примерах из реальной жизни.

Предположим, что нам нужно создать презентацию PowerPoint на основе набора JPG-картинок, которые будут лежать в каталоге C:Slides (например, они получены со сканера или цифрового фотоаппарата). Имена файлов JPG идут по порядку, например, с DSCN2440.JPG по DSCN2480.JPG. Файлов в каталоге может быть переменное количество, поэтому нам нужно взять все файлы, которые есть в этом каталоге. Наша задача — поместить их в презентацию по порядку. Задача усугубляется тем, что JPG-файлы разного размера (по высоте и ширине), а слайды, конечно, желательно сделать одинаковыми.

Как ни удивительно, код VBA для PowerPoint удобнее запускать не из PowerPoint, а из внешнего приложения, поддерживающего VBA, например, Word или Excel. Так на момент запуска у нас гарантированно не будет активных презентаций и мы ничего не перепутаем с точки зрения вставки.

Как может выглядеть наше решение:

Создаем новый документ в Word или Excel, в него помещаем кнопку или обеспечиваем другой графический интерфейс по вкусу. Главное — не забыть добавить в проект ссылки на две объектные библиотеки:

  • Microsoft PowerPoint 11.0 Object Library (C:Program FilesMicrosoft OfficeOffice 11msppt.olb) — для объектов самого PowerPoint;
  • Microsoft Scripting Runtime (C:WindowsSystem32ScrRun.dll) — для того , чтобы можно было пользоваться объектом FileSystemObject и прочими для работы с файловой системой . Эта библиотека, которая есть на любом компьютере начиная с Windows 2000, — самый удобный способ выполнения большинства действий в файловой системе.

Далее можно приступать к созданию кода.

Конечно, первое, что нам потребуется — запустить PowerPoint. Делается это точно так же, как и для Word, Excel, Access и т.п.:

Dim oApp As New PowerPoint.Application

Следующее действие — нужно создать новую пустую презентацию:

Dim oPresent As PowerPoint.Presentation

Set oPresent = oApp.Presentations.Add()

Все абсолютно стандартно, как будто мы создаем новый документ Word. А вот дальше начинаются моменты, специфические для PowerPoint и нашей задачи

Следующим действием должно быть создание слайда. Но нам придется создать столько слайдов, сколько файлов находится в каталоге C:Slides. Конечно же, нужно создавать слайды в цикле. Вначале мы получаем (при помощи библиотеки Scripting Runtime (можно было бы обойтись и средствами Office, но так проще) коллекцию всех файлов этого каталога:

Dim oFSO As New Scripting.FileSystemObject

Dim oFolder As Scripting.Folder

Dim oFile As Scripting.File

Set oFolder = oFSO.GetFolder(«C:Slides»)

For Each oFile In oFolder.Files

Если мы вместо многоточия поставим строку, например такого вида:

то можно будет убедиться, что набор файлов в правильном порядке мы получили.

Далее нам все-таки нужно создать слайды. Делается это при помощи метода Add() коллекции Slides. В документации к русскому PowerPoint 2003 описание этого метода по непонятной причине отсутствует (даже несмотря на то, что справка по VBA все равно на английском), но из всплывающей подсказки можно догадаться, что этот метод хочет принимать два параметра (обязательных): номер слайда в презентации, который должен начинаться с 1, и одно из значений перечисления ppSlideLayout (из нескольких десятков), которое определяет шаблон слайда.

Номер слайда придется обеспечивать счетчиком, а наилучший для нас шаблон — пустой:

Dim nCounter As Integer

For Each oFile In oFolder.Files

Set oSlide = oApp.ActivePresentation.Slides.Add(nCounter, ppLayoutBlank)

nCounter = nCounter + 1

А теперь — самое главное: вставляем в слайд изображение и настраиваем его размеры. Для этой цели можно использовать метод AddPicture() коллекции Shapes каждого слайда:

oSlide.Shapes.AddPicture FileName:=»C:Slides» & _

oFile.Name, LinkToFile:=msoFalse, SaveWithDocument:=msoTrue, _

Left :=10, Top :=10, Width :=700, Height :=520

Параметр FileName — это, конечно, имя передаваемого файла. Именно он и будет меняться в цикле. LinkToFile — этот параметр определяет, будет ли файл изображения помещен внутрь презентации ( msoFalse) или в презентацию будет помещена на него ссылка ( msoTrue). Конечно, если вставляемые файлы не очень большие, то и с точки зрения удобства, и с точки зрения производительности презентации лучше поместить их внутрь презентации (файла PPT). Параметр SaveWithDocument, конечно, определяет, сохранять ли наши изображения вместе с презентацией (в нашем случае сохранять). А Left, Top, Width и Height нужны, чтобы сделать изображения одинакового размера (чтобы подобрать нужные значения, я занимался обычным подбором по методу «недолет-перелет»).

Естественно, код этого пункта помещается вместо многоточия в цикл. Чтобы не возиться с удалением обработанных файлов, я поместил в цикл еще одну очевидную строку:

Итоговый код для нашей задачи может выглядеть так:

Dim oApp As New PowerPoint.Application

Dim oPresent As PowerPoint.Presentation

Set oPresent = oApp.Presentations.Add()

Dim oFSO As New Scripting.FileSystemObject

Dim oFolder As Scripting.Folder

Dim oFile As Scripting.File

Set oFolder = oFSO.GetFolder(«C:Slides»)

For Each oFile In oFolder.Files

Set oSlide = oApp.ActivePresentation.Slides.Add(nCounter, ppLayoutBlank)

oSlide.Shapes.AddPicture FileName:=»C:Slides» & _

oFile.Name, LinkToFile:=msoFalse, SaveWithDocument:=msoTrue, _

Left:=10, Top:=10, Width:=700, Height:=520

Несколько строк кода могут заменить часы нудной работы по копированию и вставке изображений вручную.

Читать еще:  Драйвер для приема wifi на ноутбуке

На практике работа с PowerPoint может быть достаточно сложной при работе с эффектами анимации, звуковым сопровождением, диапазонами фигур и т.п. Найти в документации то, что вам будет нужно, не так-то просто. Рекомендуется для получения «наводящих указаний» активнее использовать макрорекордер и анализировать созданный им код. Однако макрорекордер часто выбирает какие-то очень нетривиальные способы выполнения различных действий. Например, для вставки того же рисунка он предлагает использовать код типа

что, конечно, задачу не упрощает. Так что код макрорекордера всегда рекомендуется проверять и исправлять.

Создание приложений на языке VBA для MS PowerPoint

В PowerPoint предусмотрено множество возможностей для создания эффективных и интересных презентаций, а пользовательский интерфейс приложения позволяет с легкостью воспользоваться этими возможностями. Но иногда, несмотря на богатый набор возможностей стандартного пользовательского интерфейса PowerPoint, может понадобиться найти несложный способ выполнять рутинные, повторяющиеся задачи, а также те задачи, которые не удается решить с помощью пользовательского интерфейса. К счастью, в приложения Office, такие как PowerPoint, интегрирован Visual Basic для приложений (VBA), язык программирования, позволяющий расширять возможности этих приложений.

VBA позволяет выполнять макросы — пошаговые процедуры, написанные на языке Visual Basic. Научиться программировать не так сложно, как кажется. Терпеливые пользователи, изучавшие примеры, обнаруживают, что даже небольшие навыки программирования на VBA позволяют им выполнять в Office действия, которые раньше казались невозможными. Освоение одних приемов программирования упрощает освоение следующих — поэтому предоставляемые возможности неограниченны.

Попробуй обратиться за помощью к преподавателям

Бесспорно, самая распространенная причина использования VBA в PowerPoint — это необходимость автоматизации повторяющихся задач. Допустим, ваша презентация содержит большое количество пустых текстовых полей, которые необходимо удалить. Вместо того, чтобы искать, выбирать и удалять каждое пустое текстовое поле в каждом отдельном слайде, можно сделать так, что всю эту работу выполнял бы для вас макрос VBA в PowerPoint.

Другая распространенная причина использования VBA в PowerPoint — это добавление новых возможностей в PowerPoint. Например, вы можете создать макрос VBA, который будет выполняться прямо посреди презентации независимо от количества слайдов и выводить сообщение с указанием времени, оставшегося на показ презентации.

Существует множество других причин использовать VBA в PowerPoint, одна из важнейших среди которых — это выполнение задач, требующих взаимодействия PowerPoint с другими приложениями Office. Например, можно поместить весь текст презентации в файл данных с разделителями-запятыми (CSV), который можно открыть в Microsoft Excel 2010.

Задай вопрос специалистам и получи
ответ уже через 15 минут!

Основы программирования на VBA

Рассмотрим использование VBA в Microsoft PowerPoint 2010. Данную версию PowerPoint выберем, поскольку она по сравнению с более ранними имеет множество дополнительных возможностей для создания презентаций.

Объекты программироdания связаны друг с другом отношениями иерархии, которые зовутся объектной моделью приложения. Иначе говоря, объектная модель отображает то, что видим в пользовательском интерфейсе, например, объектная модель PowerPoint содержит среди многих других объекты Application, Presentation и Slide. Объектная модель представляет собой схему приложения и его возможностей.

Свойства и методы

Управлять объектами можно, задавая их свойства и вызывая их методы. Задание свойства изменяет некоторое качество объекта. Вызов метода заставляет объект выполнить некоторое действие. Например, объект Slide имеет метод Copy, помещающий копию слайда в буфер обмена, и свойство Layout, представляющее макет слайда.

Многие объекты существуют в версиях единственного и множественного числа — Presentation и Presentations, Slide и Slides и т. д. Версии множественного числа называются коллекциями. Объекты коллекции используются для выполнения действия над несколькими элементами коллекции.

Макросы и редактор Visual Basic

Теперь, познакомившись с принципом работы объектной модели Microsoft PowerPoint 2010, вы, вероятно, хотите попробовать вызвать методы объекта и задать его свойства. Для этого необходимо написать свой код так, чтобы он распознавался в Office. Обычно это делается с помощью редактора Visual Basic. Несмотря на то, что он установлен по умолчанию, многие пользователи не знают о его наличии, пока этот редактор не будет включен на ленте.

Все приложения Office 2010 используют ленту. Среди других вкладок на ленте имеется вкладка Разработчик, на которой можно вызвать редактор Visual Basic и другие средства разработчика. Так как в Office 2010 вкладка Разработчик не показана по умолчанию, необходимо отобразить ее самостоятельно. Для этого нужно выполнить указанные ниже действия.

Отображение вкладки Разработчик

На вкладке Файл выберем пункт Параметры, чтобы открыть диалоговое окно Параметры PowerPoint.

Затем выберем элемент Настройка ленты в левой части диалогового окна.

В разделе Выбрать команды, расположенном слева в окне, нужно выбрать пункт Часто используемые команды.

В разделе Настройка ленты, который находится справа в диалоговом окне, выберем Основные вкладки, а затем установим флажок Разработчик.

Теперь можно нажать кнопку ОК.

Когда вкладка Разработчик отобразится в окне PowerPoint, необходимо обратить внимание на то, где на этой вкладке находятся кнопки Visual Basic, Макросы и Безопасность макросов.

Внешний вид вкладки Разработчик представлен на рисунке 1.

Нажмем кнопку Безопасность макросов, чтобы определить, какие макросы могут выполняться и при каких условиях. Хотя неконтролируемый код макроса может серьезно повредить компьютер, условия безопасности, запрещающие выполнять полезные макросы, могут ограничить эффективность работы. Безопасность макросов — это сложный и важный вопрос, в котором следует разобраться при работе с макросами PowerPoint.

Помните, что если при открытии книги, содержащей макрос, между лентой и листом появляется строка Предупреждение системы безопасности: запуск макросов отключен, можно нажать кнопку Включить содержимое, чтобы включить макрос.

Кроме того, в целях безопасности не сохраняйте макрос в формате презентации PowerPoint, используемом по умолчанию (PPTX). Вместо этого макрос должен быть сохранен в файл со специальным расширением — PPTM.

Редактор Visual Basic

После отображения вкладки Разработчик можно открыть редактор Visual Basic — встроенный инструмент, используемый для создания и изменения кода VBA для PowerPoint.

Создание макроса в редакторе Visual Basic

Нажмем кнопку Макросы на вкладке Разработчик.

В открывшемся диалоговом окне Макрос введем Hello в поле Имя.

Нажмем кнопку Создать, чтобы открыть редактор Visual Basic с уже введенными основными элементами нового макроса.

Редактор Visual Basic содержит код, указанный ниже:

Sub — это сокращение от Subroutine (подпрограмма), которую в данном случае можно определить как макрос.

Вызов макроса Hello приведет к выполнению любого кода между строчками Sub Hello() и End Sub.

Теперь изменим макрос, чтобы он был похож на следующий код.

Вернемся на вкладку Разработчик в PowerPoint и снова нажмем кнопку Макросы. Выберите макрос Hello в появившемся списке, а затем нажмем кнопку Запуск, чтобы отобразить небольшое окно сообщения с текстом «Hello world».

Таким образом, мы создали и запустили пользовательский код VBA в PowerPoint. Нажмем кнопку ОК в окне сообщения, чтобы закрыть его и закончить выполнение макроса.

Читать еще:  Point как пользоваться программой

Если окно сообщения не появляется, необходимо проверить настройки безопасности макросов и перезапустить PowerPoint.

Предоставление доступа к макросам

Открыть диалоговое окно Макрос также можно с вкладки Вид, но при частом использовании макроса может оказаться более удобным вызывать его с помощью сочетания клавиш или кнопки на панели быстрого доступа.

Чтобы создать кнопку для макроса Hello на панели быстрого доступа, выполним следующие действия.

Создание кнопки для макроса на панели быстрого доступа

Переходим на вкладку Файл.

Нажмем кнопку Параметры, чтобы открыть диалоговое окно Параметры PowerPoint, а затем выберем элемент Панель быстрого доступа.

В списке раздела Выбрать команды нужно выбрать пункт Макросы. В появившемся списке найдем текст, похожий на Презентация1!Hello, и выберем его.

Затем нужно нажать кнопку Добавить >>, чтобы добавить макрос в список справа, потом нажмем кнопку Изменить…, чтобы выбрать изображение кнопки, связываемой с макросом.

Нажмем кнопку ОК. Новая кнопка должна появиться на панели быстрого доступа над вкладкой Файл.

Теперь можно быстро запустить макрос в любой момент, не обращаясь к вкладке Разработчик.

Так и не нашли ответ
на свой вопрос?

Просто напиши с чем тебе
нужна помощь

Эффективная работа в MS Office

Экономия 5 минут в час за счет более продуктивной работы дает за год экономию в 4 рабочие недели

VBA в PowerPoint

Зачем нужны макросы в PowerPoint?

Начну с того, что задачи для программирования в PowerPoint достаточно специфические, в большинстве случаев они решаются через Excel. Однако, ряд задач решить таким образом не удастся. Например:

  • Добавить на каждый слайд презентации progressbar с показом оставшегося количества слайдов
  • Убрать весь alternative text, заголовки и гиперссылки с каждой формы и рисунка
  • Автоматически рисовать фигуру по заданным параметрам, например, для перехода в определенное место презентации
  • Создать умное оглавление
  • Сделать вышеперечисленное для всех презентаций в папке (пользуясь случаем – передаю привет трудягам, у кого их больше 30 на периодическом обновлении)

Как создавать макросы?

Если вы привыкли создавать и запуска макросы из файла с поддержкой макросов – здесь все без изменений. Привычным нажатием на Alt + F11 (или с вкладки Разработчик на ленте) заходите в VBE, добавляете модуль и вставляете код макроса. Запустить код можно по кнопке Run или по нажатию на F5.

Все становится сложнее, как только вы решаете выполнять код макроса достаточно часто. В Excel для этих целей используются надстройки и кнопки на панели быстрого доступа.

В PowerPoint привычные действия такого результата не дадут. Даже если вы сохраните вашу презентацию с поддержкой макросов и написанным кодом как надстройку, подключите ее, то вы не сможете запускать макросы. Честное слово, можете попробовать самостоятельно. Я раз 5 попробовал прежде, чем смотреть в интернете в чем же все-таки дело.

А проблема в том, что по умолчанию в PowerPoint вы не можете даже открыть на чтение код макросов в надстройках . Поэтому идем дальше:

Прописываем в регистре Windows возможность редактирования надстроек

Слава богу не мы одни таким вопросом задавались, поэтому есть готовый рецепт

  • Нажмите на клавиши Win + R
  • В появившемся окне вводим regedit
  • Идем в папку HKEY_CURRENT_USERSoftwareMicrosoftOffice14.0PowerPointOptions
    (12.0 для Office 2007, 14.0 для Office 2010, 15.0 для Office 2013, 16.0 для Office 2016)
  • Щелкаем в правом окне правой кнопкой мыши –> New -> DWORD
  • Имя = DebugAddins, значение = 1

Перезапустите PowerPoint – теперь вы сможете видеть в среде VBE код макросов из надстроек.

**Как добавлять/Убирать макросы из надстройки PowerPoint **

В Excel вы редактируете код макросов надстроек, сохраняете изменения и можете быть уверены в том, что перезапуске приложения надстройка предстанет перед вами в обновленном виде.

А вот в PowerPoint это не так. Не знаю точно из-за чего сделано это ограничения, но кнопка сохранить не производит никаких изменений в вашу надстройку.

Поэтому моя рекомендация – всегда хранить у себя копию надстройки в виде презентации с поддержкой макросов. Если нужно внести изменения в надстройку, то:

  • Идем в презентацию с поддержкой макросов
  • Вносим изменения в код макросов. Сохраняем изменения в презентации
  • В параметрах PowerPoint отключаем подключенную надстройку
  • Сохраняем презентацию с поддержкой макросов как надстройку с перезаписью
  • В параметрах PowerPoint подключаем надстройку

Непростые манипуляции по сравнению с Excel, да?

Проблема с панелью быстрого доступа

Для тех, кто также как и я, любит добавлять кнопки на панель быстрого доступа:

В PowerPoint делать этого нельзя, равно как и добавить кнопки на ленту. Если быть совсем точным, сделать это возможно, но делать это придется через специальную надстройку в Excel. В ней можно дорисовать нужные вкладки.

Для себя я остановился на запуске макросов из VBE по кнопке F5.

Если вы все еще не передумали насчет макросов в PowerPoint, то:

Ресурсы по VBA в PowerPoint

Как вы, наверное, догадались – литературы по VBA в PowerPoint как таковой нет. По крайней мере, я не нашел – если поделитесь ссылкой буду рад.

Со статьями на английском языке немного попроще – для себя нашел весьма полезными ресурсы

Возможности языка Visual Basic for Application для создания теста в microsoft PowerPoint Текст научной статьи по специальности «Компьютерные и информационные науки»

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Киселева Ирина Александровна, Саушкина Екатерина Дмитриевна

Рассматривается пример создания интерактивного теста в среде MS PowerPoint с использованием языка программирования Visual Basic for Application .

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Киселева Ирина Александровна, Саушкина Екатерина Дмитриевна

FEATURES LANGUAGE VISUAL BASIC FOR APPLICATION FOR CREATING TEST IN MICROSOFT POWERPOINT

This article discusses how to create an interactive test environment in MS PowerPoint using the programming language Visual Basic for Application .

Текст научной работы на тему «Возможности языка Visual Basic for Application для создания теста в microsoft PowerPoint»

ВОЗМОЖНОСТИ ЯЗЫКА VISUAL BASIC FOR APPLICATION ДЛЯ СОЗДАНИЯ ТЕСТА В MICROSOFT POWERPOINT

© И.А. Киселева, Е.Д. Саушкина

Ключевые слова: тест; PowerPoint; Visual Basic for Application.

Рассматривается пример создания интерактивного теста в среде MS PowerPoint с использованием языка программирования Visual Basic for Application.

На современном этапе невозможно представить многие сферы деятельности без использования информационных технологий, особенно ярко это заметно в образовании. Немногие педагоги знают и используют в своей повседневной работе возможности т. н. офисного программирования. Знание основ языка VBA (Visual Basic for Applications) позволит создавать различные продукты (интерактивные плакаты и презентации, тесты и т. п.).

Удобство среды VBA заключается в том, что она внедрена в пакет прикладных программ Microsoft Office и, соответственно, является доступной практически на любом персональном компьютере, не требует установки дополнительного программного обеспечения.

Рассмотрим пример создания интерактивного теста в среде MS PowerPoint с использованием Visual Basic for Application.

Читать еще:  Как объединить слайды в powerpoint

На первом шаге выбираем тему, формулируем вопросы.

Создаем презентацию в программе MS PowerPoint и сохраняем ее с поддержкой макросов.

На втором шаге создаем слайды (на один вопрос понадобится один слайд) и оформляем их [1].

Рассмотрим технологию создания презентации на примере первого слайда.

В панели управления выбираем вкладку разработчик:

а) добавляем на слайд две надписи: ВОПРОС 1; надпись с текстом вопроса;

б) добавляем на слайд переключатели. Количество переключателей равно количеству ответов на вопрос. Для этого нужно навести курсор на переключатель и, щелкнув правой кнопкой мыши, выбрать раздел свойства, в котором изменяем вид и текст переключателей: цвет фона, надпись на переключателе, размер и тип шрифта, цвет шрифта [2].

Получим следующий слайд (рис. 1 ).

Аналогично создаются и остальные слайды с соответствующими вопросами и ответами, переключателями и кнопками.

Создадим последний слайд, на котором будут выводиться все результаты (рис. 2):

1) добавим 5 элементов — поле на слайд: результат, выполнено всего заданий, выполнено верно, процент выполнения; оценка;

2) добавим 4 элемента — надпись на слайд: надпись напротив поля «выполнено всего заданий», надпись напротив поля «выполнено верно», надпись напротив поля «выполнено верно», надпись напротив поля «оценка»;

3) создаем две кнопки: первая кнопка — «посмотреть результат», вторая кнопка — «выход»;

В конце выполнения всех действий должен получиться последний слайд следующего вида (рис. 2).

Как называется наука о животных? г Биология

Рис. 1. Слайд вопроса теста

Выполнено всего заданий

Рис. 2. Слайд результата тестирования

Теперь приступим к описанию событий. Для этого используется встроенный в офисные программы фирмы Microsoft язык Visual Basic for Application (VBA) [3].

Нам необходимо, чтобы при выборе одного из вариантов ответа и нажатии на кнопку «ДАЛЕЕ» автоматически: считалось число выполненных заданий; проверялся ответ, и если он верный, то к счетчику верных заданий прибавлялась единица; осуществлялся переход на следующий слайд (вопрос).

Откроем первый слайд. Сделаем двойной щелчок по кнопке «ДАЛЕЕ», при этом открывается редактор Visual Basic, в котором мы будем описывать процедуры нажатия на кнопку [4].

Ниже мы видим окно редактора Visual Basic. Запишем следующий код:

Z = 0 (Z — это счетчик выполненных заданий, т. е. сколько заданий в тесте, в начале теста его обнуляем)

L = 0 (L — счетчик верно выполненных заданий, ему тоже присваиваем ноль)

N = 0 (N — это процентное выполнение заданий теста)

If OptionButtonl.Value = True Then L = L + 1 End If

(Здесь проверяется, если выбран ответ первый (Зоология), то к счетчику верно выполненных заданий прибавляется единица, а если выбран неверный ответ, то не прибавляется)

Z = Z + 1 (считается число выполненных заданий) OptionButton1. Value = False OptionButton2. Value = False OptionButton3. Value = False OptionButton4. Value = False

(Здесь снимаются точки со всех переключателей, чтобы при следующем запуске теста не было по умолчанию выбранных ответов)

SlideShowWindows(1).View.Next (Это команда перехода к следующему слайду)

Аналогично открываем 2 и 3 слайды и вставляем такой же код для кнопок «ДАЛЕЕ» (можно просто скопировать код из первого слайда), однако в коде этих кнопок убираем строки Z = 0 L = 0

N = 0 (т. к. тест уже идет и обнулять показания не надо)

Для того чтобы кнопки работали, в проект необходимо добавить модуль с описанием переменных величин. Для этого делаем двойной щелчок по кнопке «ДАЛЕЕ» на первом слайде; в меню Visual Basic выбираем INSERT — MODULE; в редакторе записываем код; Public L, Z, N As Integer; закрываем презентацию и сохраняем изменения.

Код для кнопок «ПОСМОТРЕТЬ РЕЗУЛЬТАТ»:

Private Sub CommandButton1Click()

Label4.Caption = «Отлично» (Если процент выполнения >= 75 — выводится «Отлично»)

Label4. Caption = «Хорошо» (Если процент выполнения от 50 до 75 — выводится «Хорошо»)

If N = 25 Then Label4.Caption = «Удовлетворительно»

End If (Если процент выполнения от 25 до 50 — выводится «Удовлетв»)

excel графики до powerpoint vba

У меня есть стандартный код, который печатает все диаграммы в вашем активном листе в новое приложение powerpoint:

Что мне нужно сделать, так это изменить вместо таблицы activesheet на всю книгу, поэтому скопируйте все диаграммы в книге. Я попытался ввести то, что я использую для чтения книги и удаления всех листов :

но он работает и не копирует поверх графиков, когда я пытаюсь редактировать строку activesheet. Любые идеи будут оценены для меня, чтобы прогрессировать.

3 Ответа

Я пытаюсь сделать то же самое в данный момент, глядя на код выше у вас есть 3 для каждого цикла, но вы должны иметь только 2 я считаю. Один из них будет проходить по листам, а второй-по каждой диаграмме на листе.

Перед экспортом диаграммы необходимо активировать лист. Я сталкивался с этой проблемой в прошлом при экспорте диаграмм.

он пробегает и выводит все графики, но не останавливается, а просто продолжает копировать и прокручивать все листы, пока я не закрыл его после того, как он скопировал около 15 раз.

Похожие вопросы:

В настоящее время я рассматриваю несколько вариантов копирования листа excel в презентацию powerpoint. Используя VBA выберите лист excel, скопируйте диапазон и поместите его во вновь созданный слайд.

У меня есть некоторые трудности с экспортом графики в PowerPoint в виде изображений. Когда я экспортирую графику из powerpoint вручную (Rightclick — > Save as Picture), изображение имеет гораздо.

У меня был код в Excel VBA, который я также хочу преобразовать для запуска в Powerpoint VBA. вот что у меня есть до сих пор в ppt VBA: Dim wbkISS As Excel.Workbook Dim varSheetISS As Excel.Worksheet.

У меня есть 30 диаграмм, которые были созданы из excel и наклеены на powerpoint слайдов. Каждый месяц мне приходится обновлять эти 30 встроенных диаграмм, вручную нажимая на них и редактируя. Я.

Короче говоря, я пытаюсь передать строку в PowerPoint из PowerShell, чтобы обновить textbox на мастер-слайде. Я могу сделать это изнутри PowerPoint vba, но он полностью статичен. Как только я.

Вопрос: Как получить последний используемый столбец в определенной строке из листа Excel. В то время как это простая задача с использованием Excel VBA его сложнее с помощью Powerpoint VBA. Вот.

Мое требование — у меня есть Excel, который содержит некоторые данные. Я хотел бы выбрать некоторые данные из excel и открыть файл PowerPoint и Создайте таблицу в PowerPoint и заполните ее данными.

Мне нужно запустить суб PowerPoint из суб в Excel. Причина заключается в том, что большинство действий PowerPoint выполняются гораздо быстрее и с меньшим количеством ошибок при запуске из суб в.

Я работаю над автоматизацией power point, используя Excel Vba. Вот этот код ‘List of PPT Slides to Paste to MySlideArray = Array(2, 3, 4, 5, 6) ‘List of Excel Ranges to Copy from MyRangeArray =.

Я надеюсь, что кто-то может помочь. У меня есть презентация powerpoint, которая имеет связанные таблицы и графики из файла excel. обновление слайдов осуществляется вручную. я создал код VBA в.

Ссылка на основную публикацию
ВсеИнструменты 220 Вольт
Adblock
detector