Hej! Jag har lyckats få ihop ett macro som flyttar över info från cell A1 till I2.
Cell A1 uppdatersa varje timme. Sedan kopierar den över data till I2,I3,I4,I5 osv. Tillslut blir listan så lång att den inte går att hantera, och jag är bara intresserad av dom senaste timmarna.
Jag har försökt mig på ett macro som ska radera första cellen i I2 och flytta upp resterande från cell I när man har fått ett visst antal kopieringar.
Alltså jag vill ha data från I2 till I30 och sedan när nästa uppdatering sker ska I2 raderas och och det nya talet fyllas på i I30
Här kommer det första macrot som fungerar som jag vill.
Option Explicit
Public dTime As Date
Sub ValueStore()
Dim dTime As Date
Range("I" & Cells(Rows.Count).Row).End(xlUp).Offset(1, 0).Value = Range("A1").Value
Call StartTimer
End Sub
Sub StartTimer()
dTime = Now + TimeValue("01:00:00")
Application.OnTime dTime, "ValueStore", Schedule:=True
End Sub
Sub StopTimer()
On Error Resume Next
Application.OnTime dTime, "ValueStore", Schedule:=False
End Sub
_________________________________________________________________________________________________________
Och sedan vill jag lägga till den här, men får det inte att fungera.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim NR As Long
If Not Intersect(Target, Range("A1")) Is Nothing Then
NR = Range("I" & Cells(Rows.Count).Row).End(xlUp).Row + 1
Range("I" & NR).Value = Range("A1").Value
If NR > 30 Then Range("I1").Delete xlShiftUp
End If
End Sub