Makro til sammenligning af lister
HejJeg skal bruge en makro som sammenligner kolonner i 2 ark og resultatet i ark-3 skal være alle de identiske ord fra begge lister.
Jeg fandt i en gammel tråd denne her:
Sub FindEns()
Dim F As Integer, C As Integer, T As Integer, U As Integer
Worksheets("Ark3").Activate
U = 1 ' Finder ud af hvor mange rækker der er med data på ark3
Do Until Worksheets("Ark3").Cells(U, 2) = ""
U = U + 1
Loop
Worksheets("Ark1").Activate
F = 1 ' Finder ud af hvor mange rækker der er med data på ark2
Do Until Worksheets("Ark2").Cells(F, 2) = ""
F = F + 1
Loop
For T = 1 To F
Worksheets("Ark1").Activate
C = 1
Do Until Worksheets("Ark1").Cells(C, 2) = ""
If Worksheets("Ark2").Cells(T, 2) = Worksheets("Ark1").Cells(C, 2) Then
Worksheets("Ark1").Rows(C & ":" & C).Select
Selection.Copy
Sheets("Ark3").Select
Rows(U & ":" & U).Select
ActiveSheet.Paste
Sheets("Ark2").Select
Worksheets("Ark2").Rows(T & ":" & T).Select
Selection.Copy
Sheets("Ark3").Select
Rows(U + 1 & ":" & U + 1).Select
ActiveSheet.Paste
U = U + 2
Worksheets("Ark1").Activate
End If
C = C + 1
Loop
Next T
End Sub
Den virker tilsyneladende fint til mit behov, bortset fra at den kopierer de ens linier under hinanden på ark3 - jeg ønsker at resultatet er uden duplikerede linjer: Rene match skal fremkomme én gang på ark-3.
Og lige et sidespørgsmål: Er denne kode stærk( og hurtig) nok til at varetage sammenligninger på lister af f.eks 5.000 linjer fra ark-1 og 200.000 linjer fra ark-2?