Вместо того, чтобы получать первые 12 символов справа, нужна та же самая ячейка без первых 12 символов.
Dim arrData As Variant, LastRow As Long, i As Long, ws As Worksheet
Set ws = ThisWorkbook.Sheets("Long List 15032019") 'change the name of the sheet to the one you are doing the code
With ws
LastRow = .Cells(.Rows.Count, 3).End(xlUp).Row
arrData = .Range("A2", .Cells(LastRow, "C")).Value
For i = 1 To UBound(arrData)
If arrData(i, 3) Like "Bus*" Then
arrData(i, 1) = "BU CRM"
Else
arrData(i, 1) = "CSI ACE"
End If
If arrData(i, 3) Like "CSI*" Or arrData(i, 3) = vbNullString Then
arrData(i, 2) = vbNullString
Else: arrData(i, 2) = Right(arrData(i, 3), 12)
End If
Next i
.Range("A2", .Cells(LastRow, "C")).Value = arrData
End With
т.е. Если C3 = "Пример (ID: 15654534)", то B3 = "(ID: 15654534)" или Если C3 = "Пример (ID: 152)", тогда B3 = "(ID: 152)"
Я пытался использовать Left или -12. Но результат оказался не тем, что мне было нужно.
Я надеюсь, что это проясняет мой вопрос.
Спасибо