Pregunta

Tengo algo de código en este momento para dibujar un gráfico basado en los valores de una serie de cuadros de texto en un formulario de acceso.

Estoy contento con el código y cómo funciona, pero no estoy convencido de que sea la forma más eficiente de hacerlo. El gráfico tarda unos 1,2 segundos en volver a dibujar cada vez. El formulario no está vinculado, por lo que solo obtiene los valores de los cuadros de texto. Solo para verificar, lo hice para recorrer y volcar los valores de los cuadros de texto a debug.print y eso lo hizo al instante, por lo que no puede ser eso.

Sospecho que está intentando volver a dibujar el gráfico después de agregar cada valor. ¿Hay una forma más rápida de hacer esto en VBA o estoy atascado con eso?

'**************************
        '** 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

Gracias por tu ayuda

¿Fue útil?

Solución

¿Le sería posible agregar los valores a una tabla y graficar eso?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top