Вопрос

В данный момент у меня есть код для рисования графика на основе значений ряда текстовых полей в форме доступа.

Я доволен кодом и тем, как он работает, но я не уверен, что это наиболее эффективный способ сделать это. Перерисовка графика каждый раз занимает около 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

Спасибо за вашу помощь

Это было полезно?

Решение

Можно ли добавить значения в таблицу и график?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top