使用VBA更改PowerPoint 2010折线图的线条颜色

时间:2018-08-28 00:17:52

标签: vba powerpoint-vba powerpoint-2010

我正在努力从各个团队和流程中获取幻灯片,并标准化PowerPoint 2010中的格式。我面临的最大挑战是在图表中的所有系列中循环使用,这可能是幻灯片中的数量和报告的数量不一循环到报告循环,并为每个循环分配模板颜色。

我已经在多个站点中搜索了答案,但是在查找非Excel示例以及根据图表中的序列数可以动态应用颜色的示例时遇到了麻烦。

我的VBA代码如下。它成功地循环浏览幻灯片和每张幻灯片上的形状,直到找到图表为止。一旦检测到图表,我将尝试分配颜色并得到运行时错误'13':在ForeColor行上键入不匹配。从另一个示例来看,使该行不可见,然后再次可见,我看到响应者说,进行其余的格式化工作是必需的。

Sub Chart_Format()
    Dim Sl As Object
    Dim Sh As Object
    Dim Sr As Series
    For Each Sl In ActivePresentation.Slides
        For Each Sh In Sl.Shapes
            Debug.Print Sl.SlideNumber
            If Sh.HasChart Then
                Debug.Print Sh.Chart.ChartType
                If Sh.Chart.ChartType = 4 Then
                    Sh.Chart.SeriesCollection(1).Format.Line _
                        .Visible = msoFalse
                    Sh.Chart.SeriesCollection(1).Format.Line _
                        .Visible = msoTrue
                    Sh.Chart.SeriesCollection(1).Format.Line _
                        .ForeColor = RGB(1, 1, 1)
                End If
            End If
        Next Sh
    Next Sl
End Sub

预先感谢, 埃里克

0 个答案:

没有答案