I wrote a code as follows to compare 2 tables on diff worksheet.
Each work sheet has about 6000 Rows.
The code works but appears to Work very slow.
Is there a more efficient way to do it.
TABLE1
TABLE2
EXPECTED RESULT IN
TABLE1
Each work sheet has about 6000 Rows.
The code works but appears to Work very slow.
Is there a more efficient way to do it.
Code:
Sub MergeTable()
'
''
Dim ROW1 As Long
Dim ROW2 As Long
Dim C1 As String
Dim C2 As String
Dim C3 As String
Dim C4 As String
ROW1 = 2
Do While Sheets("TABLE2").Cells(ROW1, 1).Value <> ""
ROW2 = 2
Do While Sheets("TABLE1").Cells(ROW2, 1).Value <> ""
C1 = Mid(Sheets("TABLE2").Cells(ROW1, 1), 1, 6)
C2 = Mid(Sheets("TABLE1").Cells(ROW2, 1), 1, 6)
If ((Sheets("TABLE2").Cells(ROW1, 2).Value = Sheets("TABLE1").Cells(ROW2, 2).Value) And (C1 = C2)) Then
Sheets("TABLE2").Cells(ROW1, 3).Value = Sheets("TABLE1").Cells(ROW2, 1).Value
End If
ROW2 = ROW2 + 1
Loop
ROW1 = ROW1 + 1
Loop
End Sub
Code:
LABEL ID1 TAG ABA001_X1 1 ABA001_X2 1 ABA001_X3 2 ABA001_X4 1 ABA001_X5 1 ABA001_X6 2 ABA002_X1 3 ABA002_X2 4
Code:
LABEL ID1 ABA001_1 1 ABA001_2 2 ABA002_1 3 ABA002_2 4
TABLE1
Code:
LABEL ID1 TAG ABA001_X1 1 ABA001_1 ABA001_X2 1 ABA001_1 ABA001_X3 2 ABA001_2 ABA001_X4 1 ABA001_1 ABA001_X5 1 ABA001_1 ABA001_X6 2 ABA001_2 ABA002_X1 3 ABA002_1 ABA002_X2 4 ABA002_1
Comment