Оставить символы перед последним определённым знаком - VBA
Формулировка задачи:
Доброй ночи!
Имеется excel файл, напечатанного ниже формата:
-
Столбец "A"
- артикул; -Столбец "C"
- хлебные крошки. Пример страницы excel файла с исходным текстом: [A1] 52841 [C1] Audi/Белые/Битые/1000 [A2] 96281 [C2] Lada/Красные/Новые/5000 [A3] 08731 [C3] Mercedes/Черные/Новые/Семейные/3000 Напишите пожалуйста макрос который [B]оставит символы перед последней косой чертой "/" в ячейках столбца "C"[/C]. Пример необходимого результата: [A1] 52841 [C1] Audi/Белые/Битые [A2] 96281 [C2] Lada/Красные/Новые [A3] 08731 [C3] Mercedes/Черные/Новые/СемейныеРешение задачи: «Оставить символы перед последним определённым знаком»
textual
Листинг программы
Sub test1()
Dim z, i&: z = Range("C1:C" & Range("C" & Rows.Count).End(xlUp).Row).Value
With CreateObject("VBScript.RegExp"): .Pattern = "(.+)/(.+)$": .Global = True
For i = 1 To UBound(z)
If .test(z(i, 1)) Then z(i, 1) = .Replace(z(i, 1), "$1")
Next
Range("D1").Resize(UBound(z), UBound(z, 2)).Value = z
End With
End Sub