Страницы: 1
RSS
Извлечь из текста цифры, расположенные между определенными символами
 
Добрый день.
Подскажите пожалуйста может кто то знает)))
Есть ссылка которая находится в ячейке:
.ozon.ru/product/polirol-zashchitnyy-fusso-12-months-dlya-svetlyh-mashin-200gr-soft99-00298-261057178/?asb=rxG6Cs9FydVvI7Qi28TH3znzez0UhhpHHm3vGcT6nlg%253D&asb2=q9­DfwSg7UYTWrlNE-xyLswOva8EkIUEKshAUGW0b-3VORFOfPBn5mY1MLEJn2DUX&keywords=%D0%B2%D0%BE%D1%81%D0%BA+%D­0%B4%D0%BB%D1%8F+%D0%BC%D0%B0%D1%88%D0%B8%D0%BD%D1%8B

Можно ли как то извлечь только определенные цифры находящие в интервале символов -цифры/?. Важное условие что формула изъяла именно те цифры которые находятся перед символами /? до символа -
 
Андрей, как вариант с помощью регулярных выражений. См. файл
Изменено: New - 23.02.2022 23:19:20
 
, Спасибо! Может подскажите почему в Вашем файле всё работает, а если скопировать формулу в другую таблицу она перестает работать?
 
UDF в стандартный модуль
Код
Function iDigits(cell$)
 With CreateObject("VBScript.RegExp")
     .Pattern = "\d+(?=/)"
   If .test(cell) Then
     iDigits = .Execute(cell)(0)
   Else
     iDigits = ""
   End If
 End With
End Function
 
Андрей, потому что именно в этот файл встроен макрос. Вам надо либо все ссылки перенести в этот файл, либо перенести макрос в ваш файл (и пересохранить файл в формат XLSM, т.к. XLSX не может хранить в себе макросы).
Код макроса можете посмотреть нажав Alt+F11 в файле
P.S. Kuzmich, спасибо за корректный pattern
Изменено: New - 23.02.2022 23:48:29
 
,Спасибо огромнейшее Вы очень помогли)
 
Вариант формулой.
Код
=--TEXT(-LOOKUP(10^5;MID(SUBSTITUTE(SUBSTITUTE(A2;" ";"x");"/";"x");ROW(INDIRECT("1:"&LEN(A2)-10))+1;10)+0);"000000000")
 
Для примера все много проще
=TRIM(RIGHT(SUBSTITUTE(LEFT(A2;FIND("/?";A2)-1);"-";"          ");10))
По вопросам из тем форума, личку не читаю.
Страницы: 1
Наверх