首页 文章

如何使用PowerPoint VBA中的每个新幻灯片增加形状轻推?

提问于
浏览
2

此代码创建一个包含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

1 回答

  • 3

    只需更换:

    oShape.Left = oShape.Left + 2
    

    ...有:

    oShape.Left = oShape.Left + slideNumber
    

    (尽管您可能希望使用slideNumber * 10来使其显着) .

相关问题