Excel извлечь конкретный номер из ячейки - PullRequest
0 голосов
/ 14 ноября 2018

у меня есть входы в ячейку Excel, такие как:

Line 644: 6

или

Line 1004:

единственное, что мне нужно, это число рядом с ":" так что в приведенных выше случаях мне нужно

644 и 1004. все ячейки отформатированы как «общие», есть ли быстрый способ удалить другие ненужные символы и извлечь только нужные числа?

я попытался с = LEFT (Q2,4) для первого примера выше, но это дает мне ошибку «Формула, которую вы ввели, содержит ошибку»

Ответы [ 2 ]

0 голосов
/ 14 ноября 2018

Чуть короче, чем другие предложения формулы (пока), а также преобразовывает результат в числовой формат:

=1*MID(LEFT(A1,FIND(":",A1)-1),6,LEN(A1))
0 голосов
/ 14 ноября 2018

Как насчет:

=MID(MID(A1,1,FIND(":",A1)-1),FIND(" ",MID(A1,1,FIND(":",A1)-1))+1,9999)

enter image description here

НАМНОГО более надежным будет:

Public Function GetNumber(r As Range) As Variant
    Dim arr, L As Long, i As Long, CH As String, temp As String

    GetNumber = ""
    arr = Split(r.Value, ":")
    L = Len(arr(0))
    CH = ""
    temp = ""

    For i = L To 1 Step -1
        CH = Mid(arr(0), i, 1)
        If CH Like "[0-9]" Then
            temp = CH & temp
        Else
            GetNumber = temp
            Exit Function
        End If
    Next i

    GetNumber = temp
End Function

Потому что этот UDF () не полагается на один пробел перед числом.

ПУТЬ:

если формула похожа на:

 =LEFT(Q2,4)

не работает, следующая попытка:

 =LEFT(Q2;4)

вместо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...