如何在PowerPoint VBA中增加每张新幻灯片的形状微调大小?
这段代码创建了一个由10张幻灯片组成的字符串,其中每一张幻灯片的2个形状(编号1和编号3)相对于上一张幻灯片中的类似形状稍微移动一点,而一个形状(编号2)始终保持在相同的位置 每个微移等于2个点(像素?),但我想知道如何修改此代码,使每个微移都比前一个大1个点。例如,创建幻灯片2的微移将为2点,但幻灯片3的微移将为3点,以此类推如何在PowerPoint VBA中增加每张新幻灯片的形状微调大小?,vba,powerpoint,Vba,Powerpoint,这段代码创建了一个由10张幻灯片组成的字符串,其中每一张幻灯片的2个形状(编号1和编号3)相对于上一张幻灯片中的类似形状稍微移动一点,而一个形状(编号2)始终保持在相同的位置 每个微移等于2个点(像素?),但我想知道如何修改此代码,使每个微移都比前一个大1个点。例如,创建幻灯片2的微移将为2点,但幻灯片3的微移将为3点,以此类推 Sub MovingFlanks() Dim oPresentation As Presentation Set oPresentation = Act
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
(尽管您可能希望使用slideNumber*10使其引人注目)