我现在有一些代码可以根据访问表单上一系列文本框的值绘制图表。
我对代码及其工作方式很满意,但我不相信它是最有效的方法。每次重新绘制图形大约需要1.2秒。表单未绑定,因此它只是从文本框中获取值。为了检查,我让它循环并将文本框值转储到debug.print,然后立即执行,所以不能是这样。
我怀疑它试图在添加每个值之后重新绘制图表。在VBA中有没有更快的方法来实现这一点?还是我一直坚持下去?
'**************************
'** Draw the Call Deviation graph **
'**************************
.cells(1, 1) = "Start Time"
.cells(1, 2) = "Deviation"
lRT_actual = 0
lRT_forecast = 0
For i = 1 To 48
lRT_actual = lRT_actual + Me.Controls("txtActual_" & i)
lRT_forecast = lRT_forecast + Me.Controls("txtForecast_" & i)
.cells(i + 1, 1) = Format(DateAdd("n", (i - 1) * 15, "08:00:00"), "HHMM")
.cells(i + 1, 2) = lRT_actual - lRT_forecast
If Me.acxProgress_bar.Value + 2 < 100 Then
Me.acxProgress_bar.Value = Me.acxProgress_bar.Value + 2
Else
Me.acxProgress_bar.Value = 90
End If
Next i
谢谢你的帮助