Як працювати з полями повідомлень і введенням у 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 "Xin chao cac ban da den voi Hoc Excel Online"
  Кінець Під
   
  Sub HeoBasicMessageBoxWithTitle()
  MsgBox "Xin chao cac ban da den voi Hoc Excel Online", , "HEO"
  Кінець Під
   
  Sub HeoBasicMessageBox2()
  MsgBox "Hoc Excel Online", _
  vbOKCancel + _
  vbCritical + _
  vbDefaultButton1 + _
  vbApplicationModal
  Кінець Під
   
  Sub HeoBasicMessageBox3()
  MsgBox "Hoc Excel Online", _
  vbOKCancel + _
  vbCritical + _
  vbDefaultButton1 + _
  vbSystemModal
  Кінець Під
   
  Sub HeoMsgBoxResult1()
  Неяскрава відповідь Як VbMsgBoxResult
   
  відповідь = MsgBox("Hoc Excel Online", vbYesNo + vbCritical)
  Відповідь MsgBox
  Кінець Під
   
  Sub HeoMsgBoxResult2()
  Неяскрава відповідь Як VbMsgBoxResult
   
  відповідь = MsgBox("Hoc Excel Online", vbYesNo + vbQuestion)
  Відповідь MsgBox
  Кінець Під
   
  Sub HeoMsgBoxResult3()
  Неяскрава відповідь Як VbMsgBoxResult
   
  відповідь = MsgBox("Hoc Excel Online", vbYesNo + vbExclamation)
  Відповідь MsgBox
   
  Кінець Під
   
  Sub HeoMsgBoxResult4()
  Неяскрава відповідь Як VbMsgBoxResult
   
  відповідь = MsgBox("Hoc Excel Online", vbYesNo + vbInformation)
  Відповідь MsgBox
  Кінець Під
   
  Sub HeoMsgBoxResult5()
  Неяскрава відповідь Як VbMsgBoxResult
  відповідь = MsgBox("Помилка", vbAbortRetryIgnore + vbDefaultButton1 + vbMsgBoxHelpButton)
  Відповідь MsgBox
  Кінець Під
   
  Sub HeoMsgBoxResult6()
  Неяскрава відповідь Як VbMsgBoxResult
  відповідь = MsgBox("Помилка", vbAbortRetryIgnore + vbDefaultButton2 + vbMsgBoxHelpButton)
  Відповідь MsgBox
  Кінець Під
   
  Sub HeoMsgBoxResult7()
  Неяскрава відповідь Як VbMsgBoxResult
  відповідь = MsgBox("Помилка", vbAbortRetryIgnore + vbDefaultButton3 + vbMsgBoxHelpButton)
  Відповідь MsgBox
  Кінець Під
   
  Sub HeoMsgBoxResult8()
  Неяскрава відповідь Як VbMsgBoxResult
  відповідь = MsgBox("Помилка", vbAbortRetryIgnore + vbDefaultButton4 + vbMsgBoxHelpButton)
  Відповідь MsgBox
  Кінець Під
   
  Sub HeoMsgBoxResult9()
  Неяскрава відповідь Як VbMsgBoxResult
  відповідь = MsgBox("Бажаєте спробувати ще раз?", vbRetryCancel + vbQuestion, "Помилка")
  Відповідь MsgBox
  Кінець Під
   
  Sub HeoMsgBoxResult10()
  MsgBox "Сталася критична помилка", vbCritical, "Системна помилка"
  Кінець Під

Залишити коментар

Як виправити помилку «Outlook не може надсилати електронну пошту, але може отримувати»

Як виправити помилку «Outlook не може надсилати електронну пошту, але може отримувати»

Виправте Outlook, коли ви можете отримувати електронну пошту, але не можете її надсилати. Перевірте папку «Вихідні», офлайн-режим, вхід у систему, налаштування SMTP, профілі та зміни в Microsoft 365.

Простий шаблон Excel для двотижневого обліку заробітної плати для невеликих команд: Практичний посібник з налаштування

Простий шаблон Excel для двотижневого обліку заробітної плати для невеликих команд: Практичний посібник з налаштування

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

Простий шаблон презентації для онбордингу нових співробітників: практичний план на 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 для організації доходів, витрат, об’єктів нерухомості та щомісячного грошового потоку. Дізнайтеся, що записувати, як налаштувати шаблон і яких помилок уникати.