【发布时间】:2020-07-04 04:31:37
【问题描述】:
此代码创建一个包含 10 个幻灯片的字符串,其中每张幻灯片的 2 个形状(编号 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
【问题讨论】:
标签: vba powerpoint