在Excel图形中设置系列名称会导致闪烁



我正在使用VBA创建一个Excel电子表格图,如下所示:-

Private Sub Chart_Calculate()
    Title$ = Range("charttitle")
    ActiveChart.Axes(xlCategory).Select
    With ActiveChart.Axes(xlCategory)
        .MinimumScale = 0
        .MaximumScale = 300
        .MinorUnit = 10
        .MajorUnit = 50
        .Crosses = xlCustom
        .CrossesAt = 0
        .ReversePlotOrder = True
        .ScaleType = xlLinear
        .DisplayUnit = xlNone
    End With
End Sub

然后我尝试设置系列名称,如下所示:-

ActiveChart.SeriesCollection(1).Name = CStr(some_value) & " Some Text"

当我将这行代码添加到 sub 时,它会导致 Chart_Calculate 函数快速连续多次激活,导致图形闪烁几秒钟然后稳定下来。

有谁知道这是怎么回事,我应该怎么做?

(这是在 Windows XP 上运行的 Excel 2003。

编辑:PortlandRunner的建议在图形重绘期间解决了问题,但如果图形在启动时可见,它仍然存在。另请参阅此内容。

尝试在

代码开头插入Application.Calculation = xlCalculationManual,并在代码末尾/附近插入Application.Calculation = xlCalculationAutomatic

最新更新