I created the code below for the example you gave.
Change Worksheets (1) and Worksheets (2) according to the worksheet with the source and the worksheet that will serve as the target.
Public Sub Replica()
Dim linha As Range
Dim Celula As Range
Dim Atributos As String
Dim Metricas As String
NumeroLinha = 1
For Each linha In Worksheets(1).UsedRange.Rows
Atributos = ""
Metricas = ""
For Each Celula In linha.Cells
If TypeName(Celula.Value) = "String" And Celula.Value <> "" Then
Atributos = IIf(Atributos = "", Celula.Value, Atributos & ";" & Celula.Value)
Else
Metricas = IIf(Metricas = "", Celula.Value, Metricas & ";" & Celula.Value)
End If
Next Celula
AtributosArray = Split(Atributos, ";")
MetricasArray = Split(Metricas, ";")
For i = 0 To UBound(MetricasArray)
Worksheets(2).Rows(NumeroLinha).Resize(, UBound(AtributosArray) + 1).FormulaArray = AtributosArray
Worksheets(2).Cells(NumeroLinha, UBound(AtributosArray) + 2) = MetricasArray(i)
NumeroLinha = NumeroLinha + 1
Next i
Next linha
End Sub