宏在运行时会失败,但在逐步执行时会起作用

时间:2020-10-06 14:44:55

标签: excel vba charts

我正在使用2轴图表来显示带有列的体积和同比变化,而没有仅视觉表示的数据标签。我编写了一个宏,以将YoY数据标签均匀地移动到每一列的上方。宏在单步执行时工作正常,但在运行时失败。

Sub Move_Data_Point_1_chart()
    Set chrt_obj_sig = ActiveSheet.ChartObjects("Volume & YoY")
    Set chrt_sig = chrt_obj_sig.Chart
    pnt_cnt = chrt_sig.SeriesCollection(1).Points.Count
    
    chrt_sig.FullSeriesCollection(1).DataLabels.Position = xlLabelPositionInsideEnd
            
    For i = 1 To pnt_cnt
        chrt_sig_pt = chrt_sig.SeriesCollection(1).Points(i).DataLabel.Top
        chrt_sig.SeriesCollection(2).Points(i).DataLabel.Top = chrt_sig_pt - 18
    Next i
    
    chrt_sig.FullSeriesCollection(1).DataLabels.Position = xlLabelPositionCenter
End Sub

这是我的预期输出。 Correct Output

这是失败的输出。 Incorrect Output

有什么建议可以解决吗?

我已经搜索并发现了许多类似的事件,但是我无法应用于我的具体情况。

谢谢。

0 个答案:

没有答案
相关问题