Как работать с полями сообщений и ввода в PowerPoint VBA?

Как работать с полями сообщений и ввода в PowerPoint VBA?

Просматривая комментарии, я увидел пару вопросов читателей о том, как работать с окнами ввода и сообщений Visual Basic в PowerPoint.

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

Настройка вкладки «Разработчик»

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

В PowerPoint перейдите в меню «Разработчик» и нажмите Visual Basic.

В дереве проекта щелкните правой кнопкой мыши презентацию, нажмите «Вставить» и выберите «Модуль». Будет создан новый модуль VBA, в котором вы будете писать свой код.

Окна сообщений в PowerPoint

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

Sub simplemessagebox()
MsgBox ("This is a simple message box")
End Sub

Нажмите F5 или Run и посмотрите результат:

Как работать с полями сообщений и ввода в PowerPoint VBA?

Пример сообщения и поля ввода

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

Вот что мы будем реализовывать:

  1. Сначала мы запросим у пользователя количество добавляемых слайдов (используя поле ввода).
  2. Затем мы уведомим пользователя о количестве создаваемых слайдов (используя окно сообщения).
  3. Наконец, продолжим и создадим слайды программно.
  4. Наконец, мы сохраним измененную презентацию


Sub CreateSlidesMessage()

Dim NumSlides As Integer
Dim MsgResult As VbMsgBoxResult

' How many slides to create
NumSlides = InputBox("Enter number of slides to create", "Create Slides")

'User confirmation
MsgResult = MsgBox("Powerpoint will create " & NumSlides & " slides. Proceed?", vbApplicationModal, "Create Slides")

'create the slides
If MsgResult = vbOK Then
    For i = 1 To NumSlides
        Set NewSlide = ActivePresentation.Slides.Add(Index:=i + 1, Layout:=ppLayoutBlank)
    Next i
    'Save the Presentation
    ActivePresentation.SaveAs("Your Presentation.pptx")
    MsgBox ("Presentation Saved.")
End If

End Sub

Надеюсь, это помогло, не стесняйтесь оставлять комментарии по мере необходимости.

Проверьте значения, возвращаемые функцией MsgBox.

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

Код проверяет, какую кнопку пользователь выбирает в MsgBox.

По выбору каждого пользователя вы можете продолжать запускать разные коды. Эти коды VBA вы можете изучить на курсах VBA с ведущими экспертами Learn Excel Online.

Поддерживает ли MsgBox вьетнамский язык с акцентом? Ответ нет, почему? Потому что Microsoft так запрограммировала. Но есть ли другой путь? Ответ — да, вы можете прочитать статью Использование вьетнамского языка с акцентом в MsgBox VBA.

Весь код в статье вы можете увидеть на Gist:

  Sub HeoBasicMessageBox()
  MsgBox "Синь чао как бан да ден voi Hoc Excel Online"
  Конец субтитра
   
  Sub HeoBasicMessageBoxWithTitle()
  MsgBox "Синь чао как бан да ден voi Hoc Excel Online", , "HEO"
  Конец субтитра
   
  СубHeoBasicMessageBox2()
  MsgBox «Hoc Excel Online», _
  vbOKОтмена + _
  vbCritical + _
  vbDefaultButton1 + _
  vbApplicationModal
  Конец субтитра
   
  СубHeoBasicMessageBox3()
  MsgBox «Hoc Excel Online», _
  vbOKОтмена + _
  vbCritical + _
  vbDefaultButton1 + _
  vbSystemModal
  Конец субтитра
   
  СубHeoMsgBoxResult1()
  Тусклый ответ как VbMsgBoxResult
   
  ответ = MsgBox("Hoc Excel Online", vbДаНет + vbCritical)
  Ответ MsgBox
  Конец субтитра
   
  СубHeoMsgBoxResult2()
  Тусклый ответ как VbMsgBoxResult
   
  ответ = MsgBox("Hoc Excel Online", vb YesNo + vbQuestion)
  Ответ MsgBox
  Конец субтитра
   
  СубHeoMsgBoxResult3()
  Тусклый ответ как VbMsgBoxResult
   
  ответ = MsgBox("Hoc Excel Online", vbДаНет + vbExclamation)
  Ответ MsgBox
   
  Конец субтитра
   
  СубHeoMsgBoxResult4()
  Тусклый ответ как VbMsgBoxResult
   
  ответ = MsgBox("Hoc Excel Online", vbДаНет + vbInformation)
  Ответ MsgBox
  Конец субтитра
   
  СубHeoMsgBoxResult5()
  Тусклый ответ как VbMsgBoxResult
  ответ = MsgBox("Ошибка", vbAbortRetryIgnore + vbDefaultButton1 + vbMsgBoxHelpButton)
  Ответ MsgBox
  Конец субтитра
   
  СубHeoMsgBoxResult6()
  Тусклый ответ как VbMsgBoxResult
  ответ = MsgBox("Ошибка", vbAbortRetryIgnore + vbDefaultButton2 + vbMsgBoxHelpButton)
  Ответ MsgBox
  Конец субтитра
   
  СубHeoMsgBoxResult7()
  Тусклый ответ как VbMsgBoxResult
  ответ = MsgBox("Ошибка", vbAbortRetryIgnore + vbDefaultButton3 + vbMsgBoxHelpButton)
  Ответ MsgBox
  Конец субтитра
   
  СубHeoMsgBoxResult8()
  Тусклый ответ как VbMsgBoxResult
  ответ = MsgBox("Ошибка", vbAbortRetryIgnore + vbDefaultButton4 + vbMsgBoxHelpButton)
  Ответ MsgBox
  Конец субтитра
   
  СубHeoMsgBoxResult9()
  Тусклый ответ как VbMsgBoxResult
  ответ = MsgBox("Хотите попробовать еще раз?", vbRetryCancel + vbQuestion, "Ошибка")
  Ответ MsgBox
  Конец субтитра
   
  СубHeoMsgBoxResult10()
  MsgBox «Произошла критическая ошибка», vbCritical, «Системная ошибка».
  Конец субтитра

6 простых и быстрых решений для исправления ошибки PS4 CE-32895-7

6 простых и быстрых решений для исправления ошибки PS4 CE-32895-7

Получение ошибки CE-32895-7 при попытке войти в систему или подключиться к PS4, затем следуйте приведенным решениям и легко устраните ошибку PS4 CE-32895-7.

7 быстрых исправлений ошибки ReCaptcha для владельца сайта: неверный тип ключа

7 быстрых исправлений ошибки ReCaptcha для владельца сайта: неверный тип ключа

Увидев Google ReCaptcha «Ошибка для владельца сайта: неверный тип ключа», попробуйте исправить, например, перейти на ключ ReCaptcha V2, обновить браузер и т. д.

Распространенные проблемы Pixel 6 и Pixel 6 Pro и способы их решения

Распространенные проблемы Pixel 6 и Pixel 6 Pro и способы их решения

Мы составили список наиболее распространенных проблем с Pixel 6 и Pixel 6 Pro, а также некоторые применимые решения. Узнайте больше здесь и дайте нам свои 2 цента.

Как решить проблему «Sims 4 Сим не спит»? [ПРОВЕРЕННЫЕ СПОСОБЫ]

Как решить проблему «Sims 4 Сим не спит»? [ПРОВЕРЕННЫЕ СПОСОБЫ]

Обеспокоены уровнем энергии симов, поскольку симы не остаются в постели и не засыпают? Прочитайте о решениях проблемы Sims 4: сим не спит.

Двухэтапная аутентификация Google не работает? Проверьте эти решения

Двухэтапная аутентификация Google не работает? Проверьте эти решения

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

Полное руководство по запуску Scandisk в Windows 10 и 8

Полное руководство по запуску Scandisk в Windows 10 и 8

Узнайте, как запустить ScanDisk в системе Windows 10 и 8. Прочтите полное руководство и следуйте шагам, приведенным один за другим, чтобы сделать ваш жесткий диск безошибочным.

Исправить Dungeon Siege 2 без указателя мыши [ПРОВЕРЕННЫЕ СПОСОБЫ]

Исправить Dungeon Siege 2 без указателя мыши [ПРОВЕРЕННЫЕ СПОСОБЫ]

При работе с Dungeon Siege 2 нет проблем с указателем мыши, затем попробуйте изменить разрешение, обновить драйверы, изменить параметры запуска и другие…

Windows OEM и Windows Retail: различия, которые нужно знать

Windows OEM и Windows Retail: различия, которые нужно знать

Пытаясь купить лицензионный ключ Windows, узнайте разницу между Windows OEM и Windows Retail и выберите лучший ключ продукта для своего ПК.

Ваш компьютер или сеть могут отправлять автоматические запросы [ИСПРАВЛЕНО]

Ваш компьютер или сеть могут отправлять автоматические запросы [ИСПРАВЛЕНО]

Узнайте, как устранить ошибку "Ваш компьютер может отправлять автоматические запросы" и безопасно продолжить работу с Google. Инструкции по исправлению.

8 простых способов исправить ошибку «У вас есть эта игра или приложение?» Ошибка 0x803f8001?

8 простых способов исправить ошибку «У вас есть эта игра или приложение?» Ошибка 0x803f8001?

Чтобы исправить ошибку «У вас есть эта игра или приложение?» код ошибки 0x803f8001 на Xbox, выполните несколько простых действий, чтобы устранить проблему и насладиться игрой.