Sub tst()
Dim res
With Blad1
sn = .Range("A10", .Range("A" & Rows.Count).End(xlUp))
End With
ReDim res(1 To UBound(sn) / 5, 1 To 11)
rowNum = 0
For i = 1 To UBound(sn)
If Left(sn(i, 1), 7) Like "LOC+147" Then
rowNum = rowNum + 1
res(rowNum, 1) = Mid(sn(i, 1), 9, InStr(1, sn(i, 1), ":") - 9)
ElseIf Left(sn(i, 1), 6) Like "MEA+WT" Then
res(rowNum, 2) = Mid(sn(i, 1), 13, InStr(1, sn(i, 1), "'") - 13)
ElseIf Left(sn(i, 1), 7) Like "MEA+VGM" Then
res(rowNum, 3) = Mid(sn(i, 1), 14, InStr(1, sn(i, 1), "'") - 14)
ElseIf Left(sn(i, 1), 5) Like "LOC+9" Then
res(rowNum, 4) = Mid(sn(i, 1), 7, InStr(1, sn(i, 1), ":") - 7)
ElseIf Left(sn(i, 1), 6) Like "LOC+11" Then
res(rowNum, 5) = Mid(sn(i, 1), 8, InStr(1, sn(i, 1), ":") - 8)
ElseIf Left(sn(i, 1), 6) Like "EQD+CN" Then
res(rowNum, 6) = Mid(sn(i, 1), 8, 11)
res(rowNum, 7) = Mid(sn(i, 1), 20, 4)
ElseIf Left(sn(i, 1), 4) Like "TMP+" Then
res(rowNum, 8) = Mid(sn(i, 1), 7, InStr(1, sn(i, 1), ":") - 7)
On Error Resume Next
ElseIf Left(sn(i, 1), 7) Like "DGS+IMD" Then
res(rowNum, 9) = Mid(sn(i, 1), 9, InStr(9, sn(i, 1), "+") - 9)
res(rowNum, 10) = Replace(Split(Replace(sn(i, 1), "+", "/", 9, 2), "/")(1), "'", "")
On Error GoTo 0
ElseIf Left(sn(i, 1), 6) Like "NAD+CA" Then
res(rowNum, 11) = Mid(sn(i, 1), 8, InStr(1, sn(i, 1), ":") - 8)
End If
Next
With Blad1.Cells(1, 5)
.CurrentRegion.Offset(1).ClearContents
.Offset(1).Resize(UBound(res), 11) = res
End With
End Sub
Bookmarks