Sammenligning af to dataserier
Jeg har to regne ark med hver omkring 18000 linjer.Ark1 er data fra sidste periode og ark2 er fra en ny periode.
Problemstillingen er at jeg skal sammenligne ark2 med ark 1 for at se om der er kommet ændringer. Med hjælp fra lignende spørgsmål herinde har jeg fået lavet et program som næsten virker som det skal. Den del af programmet det drejer sig om ser således ud:
Dim strOdenseG As String
Dim strOdenseN As String
Dim varGamData As Variant
Dim varNyData As Variant
Dim varGD() As Variant
Dim varND() As Variant
Dim C, T, A As Integer
Application.ScreenUpdating = False
varGamData = Worksheets("Odense G").Range("a1").CurrentRegion
varNyData = Worksheets("Odense N").Range("a1").CurrentRegion
ReDim varGD(UBound(varGamData, 1))
ReDim varND(UBound(varNyData, 1))
For T = 2 To UBound(varNyData, 1)
strOdenseN = varNyData(T, 1) & varNyData(T, 3) & varNyData(T, 5) & varNyData(T, 6)
For C = 2 To UBound(varGamData, 1)
strOdenseG = varGamData(C, 1) & varGamData(C, 3) & varGamData(C, 5) & varGamData(C, 6)
If strOdenseG = strOdenseN Then
varND(T) = "ENS"
varGD(C) = "ENS"
Exit For
Else
If varGD(C) <> "ENS" Then varGD(C) = Empty
If varND(T) <> "ENS" Then varND(T) = Empty
End If
Next C
Next T
Problemet er at hvis linje 1 og 2 er ens både i ark1 og ark2 så tager programmet linje 1 fra ny data og leder den gamle data igennem, finder linje 1 og siger at der er en makker. Derefter tager den linje 2 og søger ligeledes igennem, men kommer igen kun til linje 1 og siger at der er en makker. Det gør at linje 2 i gammel data ikke har en "makker" i den nye data selvom der reelt er en tilsvarende linje. Problemet kan løses ved at fjerne "Exit for" sætningen, men det gør at programmet tager en halv time at køre igennem.. Generelt er det også et problem at programmet er langsomt.
Nogle der har andre løsningsforslag? Sig til hvis i mangler noget info for at kunne hjælpe, eller hvis jeg ikke har formuleret problemet godt nok.
Programmet er lavet i excel 2010 med VBA
