Как обрезать буквы / символы с конца записи в ячейке
У меня есть записи в ячейках, как это:
75864543&m
2211842
1523674&mr
3452435tr
Ячейки имеют различное количество числовых значений, а некоторые имеют символы / буквы в конце. Я хочу обрезать все, кроме числовых значений, но застрял из-за разной длины числовых значений.
У кого-нибудь есть обходной путь?
2 ответа
Предполагая, что от 1 до 9 цифр в начале данных (отрегулируйте по мере необходимости), вы можете использовать эту формулу
=LOOKUP(10^10,LEFT(A1,{1,2,3,4,5,6,7,8,9})+0)
Попробуйте следующую пользовательскую функцию:
Public Function ReturnNumerals(rng As Range) As String
Dim sStr As String, i As Long, sStr1 As String
Dim sChar As String
sStr = rng.Value
For i = 1 To Len(sStr)
sChar = Mid(sStr, i, 1)
If sChar Like "[0-9]" Then
sStr1 = sStr1 & sChar
End If
Next
ReturnNumerals = sStr1
End Function
РЕДАКТИРОВАНИЕ № 1:
Если вы "макрофобны" или VBA исключена по другим причинам, попробуйте следующую формулу массива:
= MID (SUMPRODUCT (- MID("01"&A1, МАЛЫЙ ((СТРОКА ($1:$300)-1)* ЕЧИСЛО (-Mid ("01" & A1, СТРОКА ($ 1: $ 300), 1)), СТРОКА ($ 1: $ 300)) + 1,1), 10 ^ (300-СТРОКА ($ 1: $ 300))), 2300)
Формулы массива должны вводиться с помощью CNTRL-SHFT-ENTER, а не только клавишей ENTER!
Например, если A1 содержит:
a123wer98bg5
уродливая формула массива вернет:
123985