【问题标题】:Data label Properties not being set for a chart in PPT未为 PPT 中的图表设置数据标签属性
【发布时间】:2022-01-22 14:54:53
【问题描述】:

我正在尝试使用此代码 sn-p 设置数据点的数据标签属性,但由于某种原因,这些属性未按预期设置。 [请看图片以获得更好的清晰度]。

一种解决方法可能是使用Reset label Text [参见图2],从而强制数据标签更新设置的属性。但我找不到相同的vba。帮助。

 'This is happening inside a loop

 Dim thisbarpoint As Point
 Set thisbarpoint = thischart.FullSeriesCollection(ibar).Points(jbar)

 thisbarpoint.DataLabel.ShowCategoryName = True
 thisbarpoint.DataLabel.ShowValue = False
 thisbarpoint.DataLabel.ShowSeriesName = False

 Debug.Print thisbarpoint.DataLabel.caption
 Dim DataLabelCaption As String
 DataLabelCaption = thisbarpoint.DataLabel.caption
 Debug.Print DataLabelCaption 'This gives the value as 26.7%

PIC-1:

PIC-2:

【问题讨论】:

    标签: vba powerpoint


    【解决方案1】:

    这对我来说很好用:

    Dim cht As Chart, s As Series
        
    Set cht = ActivePresentation.Slides(1).Shapes(1).Chart
    Set s = cht.SeriesCollection(1)
    
    Debug.Print s.HasDataLabels 'False
    
    s.HasDataLabels = True
    With s.DataLabels
        .ShowCategoryName = True
        .ShowValue = False
        .ShowSeriesName = False
    End With
    

    我们无法知道您的文件是否已损坏,或者问题是否出在您未包含的代码中。

    【讨论】:

    • 这个问题只发生在特定的数据点上。它是一个聚集柱形图。对于其他数据点,代码运行良好。我正在努力寻找根本原因,否则会降低对宏观的信心。
    • 好的 - 可能会添加更多代码,或者与图表共享幻灯片的副本?据我所知,您发布的代码没有任何问题。
    • 最后,我制作了一个新图表并将后端数据复制到这个图表中,现在代码正在运行。原因仍然是个谜。该图表肯定会出现在超自然的甲板上......大声笑
    • 有没有办法在代码中使用Reset Label Text 选项。可能强制它刷新会起作用。我找不到相同的 vba 等价物。
    • 在 Excel VBA 中似乎是 .AutoText = True 但我认为这只会从标签中清除和“手动”编辑。
    猜你喜欢
    • 2017-10-30
    • 2013-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-04
    • 1970-01-01
    • 2013-06-03
    • 2011-01-02
    相关资源
    最近更新 更多