У меня есть код, который заменяет часть строки в столбце A в листе «Данные» с новым значением, записанным в столбце B листа «Фильтр».Vba excel заменяет строку на основе значений таблицы
Колонка A листа «Фильтр» имеет старые значения и столбца B имеет значения после замены см изображения:
Я знаю, как заменить, например, «Гриффит RV8» в «Гриффит Р.В. -8 ", но как я могу сделать эту замену плюс удалить все символы перед этой замененной строкой?
Гриффит RV8 = RV8
Sub Substitutions()
Dim rngData As Range
Dim rngLookup As Range
Dim Lookup As Range
With Sheets("Data")
Set rngData = .Range("A1", .Range("A" & Rows.Count).End(xlUp))
End With
With Sheets("Filter")
Set rngLookup = .Range("A1", .Range("A" & Rows.Count).End(xlUp))
End With
For Each Lookup In rngLookup
If Lookup.Value <> "" Then
rngData.Replace What:=Lookup.Value, _
Replacement:=Lookup.Offset(0, 1).Value, _
LookAt:=xlPart, _
SearchOrder:=xlByRows, _
MatchCase:=False
End If
Next Lookup
End Sub
Почему вы не заменяете "Гриффит RV8" с "RV8"? Это не похоже на простую замену - есть ли какое-то другое правило, которое вам нужно применить? –
Поскольку RV8 будет отображаться с десятками разных слов перед ним, и все, что мне нужно от этой строки, это RV-8 и все, что после – FotoDJ