Чтобы извлечь число из любой позиции строки в Excel, можно использовать следующую формулу: 1
=СУММПРОИЗВ(ПСТР(0&A5; НАИБОЛЬШИЙ(ИНДЕКС(ЕЧИСЛО(--ПСТР(A5; СТРОКА(ДВССЫЛ('1:'&ДЛСТР(A5))); 1)) * СТРОКА(ДВССЫЛ('1:'&ДЛСТР(A5))); 0); СТРОКА(ДВССЫЛ('1:'&ДЛСТР(A5))))+1; 1) * 10^СТРОКА(ДВССЫЛ('1:'&ДЛСТР(A5)))/10)
где A5 — исходная текстовая строка. 1
Ещё один способ — использовать функцию ЧИСЛОИЗСТРОКИ. 3 Она извлекает число из текста ячейки, не важно, в какой части строки оно находится: в начале, в конце или в середине. 3 Для работы функции требуется установка надстройки VBA-Excel. 3
Также для извлечения чисел из текста можно применить пользовательские функции (UDF). 4 Пример пользовательской функции, которая поможет с извлечением чисел из текста: 4
Function extrNum(x As String)As LongFor n = 1 To Len(x)If Mid(x, n, 1) Like '#' Then extrNum = extrNum & Mid(x, n, 1)Next nEnd Function
Чтобы применить код, нужно внедрить его в новый модуль книги и применить функцию на листе в виде: =extrNum(A1)
. 4