Как использовать vba, чтобы создать новую кнопку в Powerpoint, и как сделать индикатор выполнения после нажатия на нее?

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

Итак, я нажимаю на кнопку и после этого хочу увидеть индикатор выполнения!

Как я могу использовать vba для создания новой кнопки на панели инструментов Powerpoint и как я могу сделать индикатор выполнения, когда я нажимаю на нее?

О, в конце индикатора выполнения я хочу запустить слайд-шоу. Как я могу это сделать?

Заранее спасибо!

1 ответ

Решение

1.

Как я могу использовать VBA, чтобы создать новую кнопку на панели инструментов Powerpoint

Попробуйте этот код:

Sub AddButton()
   Dim cb As CommandBar

   Set cb = Application.CommandBars.Add("additional_toolbar", msoBarTop, , True)

   With cb.Controls.Add(msoControlButton)
      .Caption = "click me"
      .OnAction = "macro_name"
      .Style = msoButtonCaption
   End With
   cb.Visible = True
End Sub

2.

Как я могу сделать индикатор выполнения, когда я нажимаю на него?

Я бы предложил создать UserForm с элементом управления ProgressBar.

3.

попробуйте это, чтобы начать слайд-шоу [источник]:

Sub BeginSlideShow()
    ActivePresentation.SlideShowSettings.Run
End Sub

Дополнительно:
в PowerPoint нет эквивалента PERSONAL (из Excel), единственным местом для хранения кода является сама презентация, поэтому перед выполнением любого кода вам нужно открыть презентацию.

Другие вопросы по тегам