VBA:在添加使用它的对象之前设置默认的NumberFormat

我有一种情况是我经常从图表中添加和删除趋势线。 在某些时候,我必须从数据标签中捕捉趋势线的方程。 为了准确和重要的数字和一致性,我希望数据标签是科学的格式。 (即“0.0000E + 00)

当我想捕获数据标签时更改DataLabel.NumberFormat是非常令人沮丧的,因为我必须插入一个等待时间,以便数据标签可以在捕获之前进行更新。

有没有什么我可以改变图表对象,使所有新的趋势线已经有了科学的数字格式? 或者也许在Workbook_Open()子我可以将NumberFormat的默认值更改为我的格式?

这是我的代码的一个相关的例子部分。

Sub AddLinear() ActiveChart.SeriesCollection(1).Trendlines.Add Type:=xlLinear, Forward:=0, _ Backward:=0, intercept:=0, DisplayEquation:=1, DisplayRSquared:=0, Name:="Linear" End Sub Sub TrendlineEqn() Dim t As Trendline Dim eqn As String Set t = ActiveChart.SeriesCollection(1).Trendlines(1) t.DataLabel.NumberFormat = "0.0000E+00" Application.Wait (Now + TimeValue("0:00:01")) eqn = t.DataLabel.text eqn = Replace(eqn, "y= ", "") Range("A1").Value = eqn End Sub Sub Graph() ActiveSheet.ChartObjects("Chart 1").Activate Call AddLinear Call TrendlineEqn End Sub 

我的实际代码只有许多趋势线有所不同,并在之后立即删除。 一旦我决定了我想作为我的最终答案的趋势线,我做了上述。