Maybe:
Sub myjebay1()
Dim i As Long
Dim rcell As Range
Dim ws As Worksheet
Dim ws2 As Worksheet
Dim ws3 As Worksheet
Application.ScreenUpdating = False
Set ws = Workbooks("acasi ex.xlsx").Sheets("Sheet1")
Set ws2 = Workbooks("acasi ex2.xlsx").Sheets("Sheet1")
Set ws3 = Workbooks("acasi what it should look like.xlsx").Sheets("Sheet1")
ws.Activate
Columns(1).Insert
With Range("A2:A" & ws.UsedRange.Rows.count + 1)
.Formula = "=CONCATENATE(B2,C2)"
.Value = .Value
End With
ws2.Activate
Columns(1).Insert
With Range("A2:A" & ws.UsedRange.Rows.count + 1)
.Formula = "=CONCATENATE(B2,C2)"
.Value = .Value
End With
ws.Activate
For i = Range("AK" & Rows.count).End(3)(2).Row To 2 Step -1
Range(Cells(i, "AL"), Cells(i, "AS")).FormulaArray = "=VLOOKUP(A" & i & ",'[acasi ex2.xlsx]Sheet1'!$A$2:$I$218,{2,3,4,5,6,7,8,9},FALSE)"
Next i
With Range("AL2:AS" & ActiveSheet.UsedRange.Rows.count)
.Value = .Value
.Replace "#N/A", ""
End With
For Each rcell In Range("AL2:AL" & ActiveSheet.UsedRange.Rows.count + 1)
If rcell.Value <> "" Then
Range(rcell.Offset(, -36), rcell.Offset(, 7)).Copy ws3.Range("A" & Rows.count).End(3)(2)
End If
Next rcell
Range("AL2:AS" & ActiveSheet.UsedRange.Rows.count).ClearContents
Columns(1).Delete
ws2.Columns(1).Delete
Application.ScreenUpdating = True
End Sub
Based on your samples.
Bookmarks