Новое в VBA для ppt. (раньше делал больше Excel vba). Приведенный ниже макрос действительно прост и отлично работает в обычном режиме, когда я запускаю его в редакторе VBA в PowerPoint. (Добавит синюю форму прямоугольника в центр экрана)
Чтобы работать в режиме слайд-шоу, я назначил макрос случайной форме с помощью параметра настройки действия, но на самом деле ничего не происходит. Спасибо
Sub Rdmrectangle()
Dim sld As Slide
Dim shp As Shape
Dim SlideIndex As Long
SlideIndex = ActiveWindow.View.Slide.SlideIndex
Set sld = ActivePresentation.Slides(SlideIndex)
Set shp = sld.Shapes.AddShape(Type:=msoShapeRectangle, _
Left:=50, Top:=50, Width:=100, Height:=200)
With ActivePresentation.PageSetup
shp.Left = (.SlideWidth \ 2) - (shp.Width \ 2)
shp.Top = (.SlideHeight \ 2) - (shp.Height \ 2)
End With
shp.Fill.ForeColor.RGB = vbBlue
shp.ZOrder msoBringToFront
End Sub