Talvez uma rotina direta possa deixar mais rápido o processo...
Veja se funciona:
Option Explicit
Option Compare Text
Sub Concatenar_Pedidos()
Dim w, ws As Worksheet
Dim ultcel, lastcel, i As Long
Dim cel As Range
Dim mystring As String
Application.ScreenUpdating = False
Set w = Sheets("pedidos")
Set ws = Sheets("tabela completa")
ultcel = ws.Range("A" & Rows.Count).End(xlUp).Row
lastcel = w.Range("A" & Rows.Count).End(xlUp).Row
For Each cel In w.Range("A2:A" & lastcel)
For i = ultcel To 3 Step -1
If ws.Range("A" & i).Text = cel.Text And ws.Range("A" & i).Offset(0, 2).Value <> "" Then
mystring = ws.Range("A" & i).Offset(0, 2).Text & vbNewLine & mystring
End If
Next i
Select Case Len(mystring)
Case Is > 1
cel.Offset(0, 1).Value = Mid(mystring, 1, WorksheetFunction.Search("", mystring, Len(mystring) - 1) - 1)
End Select
mystring = vbNullString
Next
Set cel = Nothing
Application.ScreenUpdating = True
End Sub
Segue também em anexo:
___________________________________________________________________________________________
Se a resposta atendeu sua dúvida, por favor, clique no Gostei e marque o Tópico como [Resolvido].
Att.
André Arruda
Postado : 02/10/2018 6:13 am