1
我现在有一些代码根据访问表单上的一系列文本框的值绘制图表。访问表格上的图形
我很高兴的代码和它是如何工作,但我不认为它是这样做的最有效的方式。该图需要大约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
感谢您的帮助
我会做一个代码的快速重构来做这个测试。这将意味着如何做一个临时表,看起来有点超过顶部,但如果它总体上更快,那就这样吧! – 2009-11-26 15:50:21
临时表可以清空并重新填充,使其成为永久性临时表。 – Fionnuala 2009-11-26 15:52:07
为什么不使用存储的QueryDef来从控件中提取值? – 2009-11-26 23:25:20