Страницы: 1
RSS
Нужно извлечь число из текста по определенному критерию
 
есть столбец из набором текста и чисел, а из этого столбца нужно извлечь 9  и 10 значные числа или по определенному критерию.
 
Посмотрите функцию ИЗВЛЕЧЬ_ЧИС  в примере
Изменено: artemkau88 - 16.06.2021 12:47:47
 
Почитайте ЗДЕСЬ как это сделано
Изменено: msi2102 - 16.06.2021 13:49:51
 
.
Изменено: artemkau88 - 18.06.2021 07:51:36
 
массивная
=MAX(IF(ISERROR(--MID(SUBSTITUTE(SUBSTITUTE(A1;" ";"!")&"!";MID(1/2;2;1);"!");ROW($1:$256);{10\11}));IFERROR(MID(A1;ROW($1:$256);{9\10})/(COUNTIF(F:F;MID(A1;ROW($1:$256);2))>0);FALSE)))
По вопросам из тем форума, личку не читаю.
 
artemkau88, Вы когда пишите функции их проверяете?
Наверное вот так будет правильнее
Код
Function RegularExpressionsMy(Condition As Range, RangeToCompare As Range)
Dim Reg As Object, NewMatch As Object, colMatches As Object, s As String, x As Range
Set Reg = CreateObject("VBScript.RegExp")
For Each x In Condition
    s = s & "|" & x
Next x
Reg.Pattern = "(" & Mid(s, 2) & ")\d{7,8}"
If Reg.Test(RangeToCompare) Then
    Set colMatches = Reg.Execute(RangeToCompare)
    RegularExpressionsMy = colMatches.Item(0)
End If
End Function
Изменено: msi2102 - 18.06.2021 07:55:05 (в коде: x As Integer => x As Range)
 
Прошу прощения, ошибся. Сообщение #4 прошу удалить.
Только начал разбираться с регулярными выражениями, наверное ещё рано писать ответы на них :)

Спасибо за исправления!  
Изменено: artemkau88 - 18.06.2021 08:03:49
 
а можно просто выбрать числа длиной 9 и 10 знаков? это упростить должно формулу
Страницы: 1
Наверх