4

Как я могу извлечь дату из таких строк в Excel?

John8/11/12
Jackson09/11/2013

Желаемый результат:

John     8/11/12
Jackson  09/11/2013

Могу ли я сделать это, используя только формулу Excel, используя функции Excel?

4 ответа4

3

Используйте =LEFT(A1,MIN(FIND(0,SUBSTITUTE(A1,{1,2,3,4,5,6,7,8,9},0)&0))-1) в столбце непосредственно до справа от строки и =SUBSTITUTE(A1,B1,"") как следующий столбец ... Затем скопируйте формулу вниз.

первый

второй

2

Чтобы извлечь имя:

=LEFT(A1, MATCH(TRUE,ISNUMBER(1*MID(A1,{1,2,3,4,5,6,7,8,9},1)),0)-1)

Чтобы извлечь дату:

=RIGHT(A1, LEN(A1) - MATCH(TRUE,ISNUMBER(1*MID(A1,{1,2,3,4,5,6,7,8,9},1)),0)+1)

Примечание: оба должны быть введены как формула массива CTRL + SHIFT + ENTER

0

Возможно, вы захотите использовать регулярные выражения для достижения этой цели. Я не очень знаком с Excel, но вот ссылка, которая может помочь http://www.dzone.com/snippets/regular-expressions-excel-2007

0

Функция Excel:

Function FindNumeric( pvsString As String ) As Integer
    Dim viPosition As Integer
    Dim viFoundAt As Integer
    viFoundAt = 0
    For viPosition = 1 To Len(pvsString)
        If IsNumeric(Mid(pvsString, viPosition, 1)) Then
            viFoundAt = viPosition
            Exit For
        End If 
    Next viPosition
End Function

Тогда в вашей ячейке В вашем рабочем листе:

Для имени: =Mid( A1, 1, FindNumeric(A1)-1)

Для даты: =Mid( A1, FindNumeric(A1), 10)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .