Powerpoint VBA - 将垂直块列表的chldnode移动到左侧

时间:2017-02-22 19:41:39

标签: vba powerpoint powerpoint-vba

请查看以下截图&码。它有我到目前为止写的问题和代码(失败)

enter image description here

  

以下是我的代码:

Private Sub VerticalBlockList()
    Dim oPPT As PowerPoint.Application
    Dim oPres As PowerPoint.Presentation
    Const ppLayoutTitleAndContent As Byte = 32

    Set oPPT = CreateObject("Powerpoint.Application")
    Set oPres = oPPT.Presentations.Add()

    Dim layout As SmartArtLayout
    Set layout = Application.SmartArtLayouts(26)

    With oPres.Slides.Add(oPres.Slides.Count + 1, ppLayoutTitleAndContent)
        With .Shapes.AddSmartArt(layout, 30, 180, 318, 252)
            With .SmartArt
                .Nodes(1).Shapes(1).TextFrame2.TextRange.Text = "Sample-1"
                .Nodes(1).Shapes(2).TextFrame2.TextRange.Text = "Sample-2"

                ' Below statement throws error.
                ' basically I want to move the bullet section to little bit on left so that the bullet points doesn't show up
                ' P.S. there is no way I can remove that bullet in a Vertical Block List

                .Nodes(1).Shapes(2).left = .Nodes(1).Shapes(2).left - 30

            End With
        End With
    End With    
End Sub

1 个答案:

答案 0 :(得分:2)

无需移动形状,您只需移除子弹:

{{1}}