У меня есть таблица с именами пользователей. Имя и фамилия находятся в одной ячейке. Есть ли формула, чтобы взять первую букву первого слова и целое второе слово?

Например; В ячейке А1 есть Джон Смит.
Ячейка B1 должна иметь JSmith

2 ответа2

1

Ну вот :

= CONCATENATE(ЛЕВЫЙ (A1,1), B1)

Или же

= слева (A1,1) и B1

1

Если вы хотите второе слово, формула:

=LEFT(A1)&MID(A1,IFERROR(FIND(" ",A1),LEN(A1))+1,IFERROR(FIND(" ",SUBSTITUTE(A1," ","",1)),LEN(A1))-IFERROR(FIND(" ",A1),LEN(A1)))

Это работает так:

LEFT(A1) вытягивает первый символ в ячейке

MID(A1,[MESS 1],[MESS 2] извлекает средний текст, начиная с [MESS 1] и включая символы [MESS 2]

IFERROR(FIND(" ",A1),LEN(A1))+1 находит символ после первого пробела в ячейке или, если пробелов нет, находит самый конец текста (это заставит функцию MID вернуться ничего, что в порядке, потому что нет второго слова

IFERROR(FIND(" ",SUBSTITUTE(A1," ","",1)),LEN(A1)) Находит второе пространство в ячейке или, если второго места нет, находит конец ячейки , Если есть только один пробел, это найдет конец второго слова, которое мы хотим.

-IFERROR(FIND(" ",A1),LEN(A1)) вычитает первую позицию пробела из второй позиции пробела. Это дает нам длину второго слова, которое нам нужно для функции MID .




Если вы хотите последнее слово, формула:

=LEFT(A1) & MID(A1,IFERROR(FIND("ÿ",SUBSTITUTE(A1," ","ÿ",(LEN(A1)-LEN(SUBSTITUTE(A1," ","")))/LEN(" "))),LEN(A1))+1,LEN(A1))

Это работает так:

LEFT(A1) вытягивает первый символ в ячейке

MID(A1,[MESS 3],[MESS 4] извлекает средний текст, начиная с [MESS 3] и включая символы [MESS 4]

IFERROR([MESS 5],LEN(A1))+1 находит символ после последнего пробела в ячейке. Если пробелов нет, он возвращает длину ячейки, из-за которой MID ничего не возвращает, что нормально, потому что нет последнего слова, если только вы не посчитали первые слова последним, но это не то, что мы хотим. [MESS 5] - это часто используемая формула для поиска последнего экземпляра символа в ячейке. На бирже стека есть объяснение.

LEN(A1) возвращает длину ячейки. Так как мы хотим последнее слово, мы можем сказать MID что он должен идти до конца.

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