2009-11-11 42 views
2

此代码创建一个10张幻灯片的字符串,其中每张下一张幻灯片的2个形状(编号1和编号3)与前一张幻灯片中的相似形状相比轻微一点,而一个形状(编号2)保持相同整个位置。如何增加PowerPoint VBA中每个新幻灯片的形状大小?

每个微调都等于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 

回答

3

只需更换:

oShape.Left = oShape.Left + 2 

...有:

oShape.Left = oShape.Left + slideNumber 

(尽管您可能想要使用slideNumber * 10使其更明显)。

+0

谢谢,加里! – brilliant 2009-11-12 00:55:25

相关问题