При использовании RTD получение новых данных в последующих строках (lrow
) по мере их поступления не является проблемой.
Но это помещает новые данные в последнюю строку, и я хочу, чтобы они были в верхней строке, что в моем случае это строка 13.
Чтобы достичь этого, я вставляю новую строку в строку 13 каждый раз, когда она получает новые данные из формулы RTD в строке 12.
Но приведенный ниже код вставляет 58 строк, заполненных каждым новым данными, в виде ниже показан код.
Application.Wait
из 0,5 se c не имеет никакого эффекта, и 1 se c принудительно обновляет каждые se c с такими же избыточными данными, блокируя RTD для обновления sh с новыми данными.
Каждый фактический интервал притока данных составляет споради c - от одной (или меньше?) До нескольких секунд.
Что мне здесь не хватает или как это можно надежно решить, пожалуйста?
TIA!
Private Sub Worksheet_Calculate()
capturerow = 12
currow = 13
Application.ScreenUpdating = False
If Cells(12, 2) = "" Then
Cells(currow, 1) = Format(Now(), "hh:mm:ss")
Cells(currow, 2) = Cells(capturerow, 2)
Cells(currow, 2).EntireRow.Insert Shift:=xlDown
End If
Application.ScreenUpdating = True
End Sub
Выход -
Time Last
RTD Formula -> Row 12
-> Row 13
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:20 25878
1:54:18 25886