Excel:记录实时更新行到表

时间:2017-02-13 09:19:40

标签: excel excel-vba real-time vba

我有实时更新sheet1上的行(A2:E2),我想每隔5秒将它记录到sheet2上的一个表中。最终目标是绘制图表。

我尝试了这个,但我只是让数据表在第1行更新,无法进一步填充。

Sub ValueStore()
    Dim dTime As Date
    Dim LastRow As Long
    LastRow = Sheets("Data").Range("A" & Rows.Count).End(xlUp).Row + 1
    Range("A2:E2").Copy Destination:=Sheets("Data").Range("A" & LastRow)
    Call StartTimer
End Sub

Sub StartTimer()
    dTime = Now + TimeValue("00:00:05")
    Application.OnTime dTime, "ValueStore", Schedule:=True
End Sub

Sub StopTimer()
    On Error Resume Next
    Application.OnTime dTime, "ValueStore", Schedule:=False
End Sub

Sub DeleteData()
    Sheets("Data").Range("A2:E1000").Delete
End Sub

1 个答案:

答案 0 :(得分:0)

在执行下一个循环之前尝试使用循环和wait()方法...

    sub valuestore()
    for (loop range)
      LastRow = Sheets("Data").Range("A" & Rows.Count).End(xlUp).Row + 1
      Range("A2:E2").Copy Destination:=Sheets("Data").Range("A" & LastRow)
      application.wait now()+"00:00:05"
      next loop_variable
      end sub