Как увеличить размер смещения фигуры с каждым новым слайдом в PowerPoint VBA?
-
19-09-2019 - |
Вопрос
Этот код создает строку из 10 слайдов, в которой две фигуры каждого следующего слайда (номер 1 и номер 3) немного смещаются относительно аналогичных фигур на предыдущем слайде, в то время как одна фигура (номер 2) остается в том же положении на протяжении всего .
Каждое смещение равно 2 точкам (пикселям?), но мне интересно, как можно изменить этот код, чтобы каждое смещение было больше предыдущего на один пункт.Например, сдвиг для создания слайда 2 будет составлять 2 балла, а для слайда 3 — 3 балла и т. д.
Sub MovingFlanks()
Dim oPresentation As Presentation
Set oPresentation = ActivePresentation
Dim oSlide As Slide
Dim oSlides As SlideRange
Dim oShape As Shape
Dim slideNumber As Integer
For slideNumber = 1 To 10
Set oSlide = oPresentation.Slides(oPresentation.Slides.Count)
oSlide.Copy
Set oNewSlides = oPresentation.Slides.Paste()
Set oSlide = oNewSlides(1)
Set oShape = oSlide.Shapes(1)
For Each shapeNum In Array(1, 3)
Set oShape = oSlide.Shapes(shapeNum)
oShape.Left = oShape.Left + 2
Next shapeNum
Next slideNumber
End Sub
Решение
Просто замените:
oShape.Left = oShape.Left + 2
...с:
oShape.Left = oShape.Left + slideNumber
(хотя вы можете использовать номер слайда * 10, чтобы это было заметно).
Не связан с StackOverflow